E-MailRelay

Public Member Functions | List of all members
GAuth::SaslServerPam Class Reference

An implementation of the SaslServer interface using PAM as the authentication mechanism. More...

`#include <gsaslserverpam.h>`

Inheritance diagram for GAuth::SaslServerPam:

## 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
Public Member Functions inherited from GAuth::SaslServer
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.

## Detailed Description

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.

## Constructor & Destructor Documentation

## ◆ SaslServerPam()

GAuth::SaslServerPam::SaslServerPam | ( | const SaslServerSecrets & | secrets,
|  | const std::string & | config,
|  | bool | allow_apop
| ) |  |

Constructor.

Definition at line 200 of file gsaslserverpam.cpp.

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

- /usr/src/slapt-src-x86_64/network/emailrelay/emailrelay-2.3/src/gauth/gsaslserverpam.h
- /usr/src/slapt-src-x86_64/network/emailrelay/emailrelay-2.3/src/gauth/gsaslserverpam.cpp