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