sasl_server_start - Begin an authentication negotiation
SYNOPSIS
#include <sasl.h>
int sasl_server_start(sasl_conn_t * conn,
const char * mech,
const char * clientin,
unsigned * clientinlen,
char ** serverout,
unsigned * serveroutlen,
const char ** errstr);
DESCRIPTION
sasl_server_start() begins the authentication with the
mechanism specified with mech. This fails if the mechanism
is not supported. SASL_OK is returned if the authentica
tion is complete and the user is authenticated. SASL_CON
TINUE is returned if one or more steps are still required
in the authentication. All other return values indicate
failure.
conn the SASL context for this connection mech the mecha
nism name that the client requested clientin client ini
tial response, NULL if empty clientinlen length of initial
response serverout is created by the library. It is the
initial server response to send to the client. This is
allocated for by the library and it is the job of the
client to send it over the network to the server. Also
protocal specific encoding (such as base64 encoding) must
needs to be done by the server. serveroutlen length of
initial server challenge errstr is set to a string to send
to the user on failure
RETURN VALUE
sasl_server_start returns an integer which corresponds to
one of the following codes. SASL_CONTINUE indicates sucess
and that there are more steps needed in the authentica
tion. All other return codes indicate errors and should
either be handled or the authentication session should be
quit.
ERRORS
SASL_CONTINUE
Success. keep going.
user interaction needed to fill in prompt_need
list
SASL_BADVERS
Mechanism version mismatch
SASL_BADPARAM
error in config file
SASL_NOMEM
not enough memory to complete operation
CONFORMING TO
RFC 2222
SEE ALSO
othersaslstuff
Man(1) output converted with
man2html