Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
GAuth::SaslServerBasicImp Class Reference

A private pimple-pattern implementation class used by GAuth::SaslServerBasic. More...

Public Member Functions

 SaslServerBasicImp (const SaslServer::Secrets &, bool, bool)
 
bool init (const std::string &mechanism)
 
bool validate (const std::string &secret, const std::string &response) const
 
bool trusted (GNet::Address) const
 
bool trustedCore (const std::string &, const std::string &) const
 
std::string mechanisms (const std::string &) const
 

Static Public Member Functions

static std::string cramDigest (const std::string &secret, const std::string &challenge)
 
static std::string digest (const std::string &secret, const std::string &challenge)
 

Public Attributes

bool m_first
 
const SaslServer::Secretsm_secrets
 
std::string m_mechanisms
 
std::string m_mechanism
 
std::string m_challenge
 
bool m_authenticated
 
std::string m_id
 
std::string m_trustee
 
bool m_advertise_login
 
bool m_advertise_plain
 
bool m_advertise_cram_md5
 
bool m_advertise_force_one
 

Detailed Description

A private pimple-pattern implementation class used by GAuth::SaslServerBasic.

Definition at line 42 of file gsaslserverbasic_native.cpp.

Constructor & Destructor Documentation

GAuth::SaslServerBasicImp::SaslServerBasicImp ( const SaslServer::Secrets secrets,
bool  ,
bool  force_one 
)

Member Function Documentation

std::string GAuth::SaslServerBasicImp::cramDigest ( const std::string &  secret,
const std::string &  challenge 
)
static

Definition at line 145 of file gsaslserverbasic_native.cpp.

References G::Md5::hmac(), and G::Md5::printable().

std::string GAuth::SaslServerBasicImp::digest ( const std::string &  secret,
const std::string &  challenge 
)
static

Definition at line 150 of file gsaslserverbasic_native.cpp.

References G::Md5::digest(), and G::Md5::printable().

bool GAuth::SaslServerBasicImp::init ( const std::string &  mechanism)

Definition at line 99 of file gsaslserverbasic_native.cpp.

References GNet::Local::fqdn(), and G::DateTime::now().

std::string GAuth::SaslServerBasicImp::mechanisms ( const std::string &  sep) const

Definition at line 90 of file gsaslserverbasic_native.cpp.

References G::Str::join().

bool GAuth::SaslServerBasicImp::trusted ( GNet::Address  address) const
bool GAuth::SaslServerBasicImp::trustedCore ( const std::string &  secrets_key,
const std::string &  address_to_log 
) const

Definition at line 167 of file gsaslserverbasic_native.cpp.

References G_DEBUG, and G_LOG.

bool GAuth::SaslServerBasicImp::validate ( const std::string &  secret,
const std::string &  response 
) const

Definition at line 127 of file gsaslserverbasic_native.cpp.

References G_ASSERT, and G_DEBUG.

Member Data Documentation

bool GAuth::SaslServerBasicImp::m_advertise_cram_md5

Definition at line 55 of file gsaslserverbasic_native.cpp.

Referenced by SaslServerBasicImp().

bool GAuth::SaslServerBasicImp::m_advertise_force_one

Definition at line 56 of file gsaslserverbasic_native.cpp.

bool GAuth::SaslServerBasicImp::m_advertise_login

Definition at line 53 of file gsaslserverbasic_native.cpp.

Referenced by SaslServerBasicImp().

bool GAuth::SaslServerBasicImp::m_advertise_plain

Definition at line 54 of file gsaslserverbasic_native.cpp.

Referenced by SaslServerBasicImp().

bool GAuth::SaslServerBasicImp::m_authenticated

Definition at line 50 of file gsaslserverbasic_native.cpp.

std::string GAuth::SaslServerBasicImp::m_challenge

Definition at line 49 of file gsaslserverbasic_native.cpp.

bool GAuth::SaslServerBasicImp::m_first

Definition at line 45 of file gsaslserverbasic_native.cpp.

std::string GAuth::SaslServerBasicImp::m_id

Definition at line 51 of file gsaslserverbasic_native.cpp.

std::string GAuth::SaslServerBasicImp::m_mechanism

Definition at line 48 of file gsaslserverbasic_native.cpp.

std::string GAuth::SaslServerBasicImp::m_mechanisms

Definition at line 47 of file gsaslserverbasic_native.cpp.

const SaslServer::Secrets& GAuth::SaslServerBasicImp::m_secrets

Definition at line 46 of file gsaslserverbasic_native.cpp.

Referenced by SaslServerBasicImp().

std::string GAuth::SaslServerBasicImp::m_trustee

Definition at line 52 of file gsaslserverbasic_native.cpp.


The documentation for this class was generated from the following file: