Construct a new SASL session.
- Parameters
-
serviceName | name of the service using this session |
ctx | SASL context |
auth | authenticator to use for this session |
mech | SASL mechanism |
bool evaluateChallenge |
( |
const byte_t * |
challenge, |
|
|
const size_t |
challengeLen, |
|
|
byte_t ** |
response, |
|
|
size_t * |
responseLen |
|
) |
| |
Perform one step of SASL authentication.
Accept data from the server (challenge), process it and return data to be returned in response to the server.
If the challenge is empty (challengeLen == 0), the initial response is returned, if the mechanism has one.
- Parameters
-
challenge | challenge sent from the server |
challengeLen | length of challenge |
response | response to send to the server (allocated by this function, free with delete[]) |
responseLen | length of response buffer |
- Returns
- true if authentication terminated successfully, or false if the authentication process should continue
- Exceptions
-
exceptions::sasl_exception | if an error occured during authentication (in this case, the values in 'response' and 'responseLen' are undetermined) |
Return the authenticator used for this session.
This is the authenticator which has been previously set with a call to setAuthenticator().
- Returns
- authenticator object
Return the SASL context.
- Returns
- SASL context
Return the mechanism used for this session.
- Returns
- SASL mechanism
Return a socket in which transmitted data is integrity and/or privacy protected, depending on the QOP (Quality of Protection) negotiated during the SASL authentication.
- Parameters
-
- Returns
- secured socket
const string getServiceName |
( |
| ) |
const |
Return the name of the service which is using this SASL session (eg.
"imap"). This value should be returned by the authenticator when INFO_SERVICE is requested.
- Returns
- service name
Initialize this SASL session.
This must be called before calling any other method on this object (except accessors).
The documentation for this class was generated from the following files: