E-MailRelay
|
An implementation of the SaslServer interface using PAM as the authentication mechanism. More...
#include <gsaslserverpam.h>
Public Member Functions | |
SaslServerPam (const SaslServerSecrets &, const std::string &config, bool allow_apop) | |
Constructor. More... | |
SaslServerPam (const SaslServerPam &)=delete | |
SaslServerPam (SaslServerPam &&)=delete | |
SaslServerPam & | operator= (const SaslServerPam &)=delete |
SaslServerPam & | operator= (SaslServerPam &&)=delete |
![]() | |
virtual | ~SaslServer ()=default |
Destructor. | |
virtual bool | requiresEncryption () const =0 |
Returns true if the implementation requires that the challenge/response dialog should only take place over an encrypted transport. | |
virtual bool | active () const =0 |
Returns true if the constructor's "secrets" object was valid. More... | |
virtual std::string | mechanisms (char space_separator) const =0 |
Returns a list of supported, standard mechanisms that can be advertised to the client. More... | |
virtual bool | init (const std::string &mechanism)=0 |
Initialiser. More... | |
virtual std::string | mechanism () const =0 |
Returns the mechanism, as passed to the last init() call to return true. | |
virtual bool | mustChallenge () const =0 |
Returns true if authentication using the current mechanism must always start with a non-empty server challenge, ie. More... | |
virtual std::string | initialChallenge () const =0 |
Returns the possibly-empty initial server challenge. | |
virtual std::string | apply (const std::string &response, bool &done)=0 |
Applies the client response and returns the next challenge and a 'done' flag by reference. More... | |
virtual bool | authenticated () const =0 |
Returns true if authenticated sucessfully. More... | |
virtual std::string | id () const =0 |
Returns the authenticated or trusted identity. More... | |
virtual bool | trusted (const GNet::Address &) const =0 |
Returns true if a trusted client that does not need to authenticate. | |
An implementation of the SaslServer interface using PAM as the authentication mechanism.
This class tries to match up the PAM interface with the SASL server interface. The match is not perfect; only single-challenge PAM mechanisms are supported, the PAM delay feature is not implemented, and PAM sessions are not part of the SASL interface.
Definition at line 49 of file gsaslserverpam.h.
GAuth::SaslServerPam::SaslServerPam | ( | const SaslServerSecrets & | secrets, |
const std::string & | config, | ||
bool | allow_apop | ||
) |
Constructor.
Definition at line 200 of file gsaslserverpam.cpp.