E-MailRelay
|
An implementation of the SaslServer interface using PAM as the authentication mechanism. More...
#include <gsaslserverpam.h>
Public Member Functions | |
SaslServerPam (bool with_apop) | |
Constructor. More... | |
SaslServerPam (const SaslServerPam &)=delete | |
SaslServerPam (SaslServerPam &&)=delete | |
SaslServerPam & | operator= (const SaslServerPam &)=delete |
SaslServerPam & | operator= (SaslServerPam &&)=delete |
![]() | |
virtual | ~SaslServer ()=default |
Destructor. | |
virtual G::StringArray | mechanisms (bool secure) const =0 |
Returns a list of supported, standard mechanisms that can be advertised to the client. More... | |
virtual void | reset ()=0 |
Clears the internal state as if just constructed. More... | |
virtual bool | init (bool secure, const std::string &mechanism)=0 |
Initialiser for the given mechanism. More... | |
virtual std::string | mechanism () const =0 |
Returns the current mechanism, as selected by the last successful init(). | |
virtual std::string | preferredMechanism (bool secure) const =0 |
Returns a preferred mechanism if authentication with the current mechanism has failed. More... | |
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 G::StringArray &address_wildcards, const std::string &address_display) const =0 |
Returns true if a trusted client that does not need to authenticate. More... | |
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 47 of file gsaslserverpam.h.
|
explicit |
Constructor.
Definition at line 213 of file gsaslserverpam.cpp.