1.. saslman:: sasl_server_step(3) 2 3.. _sasl-reference-manpages-library-sasl_server_step: 4 5 6======================================================================= 7**sasl_server_step** - Perform a step in the authentication negotiation 8======================================================================= 9 10Synopsis 11======== 12 13.. code-block:: C 14 15 #include <sasl/sasl.h> 16 17 int sasl_server_step(sasl_conn_t *conn, 18 const char *clientin, 19 unsigned clientinlen, 20 const char ** serverout, 21 unsigned * serveroutlen); 22 23Description 24=========== 25 26.. c:function:: int sasl_server_step(sasl_conn_t *conn, 27 const char *clientin, 28 unsigned clientinlen, 29 const char ** serverout, 30 unsigned * serveroutlen); 31 32 **sasl_server_step()** performs a step in the authentication negotiation. It 33 returns :c:macro:`SASL_OK` if the whole negotiation is successful and 34 :c:macro:`SASL_CONTINUE` if 35 this step is ok but at least one more step is needed. 36 37 :param conn: is the SASL connection context 38 39 :param clientin: is the data given by the client (decoded if the 40 protocol encodes requests sent over the wire) 41 :param clientinlen: is the length of `clientin` 42 43 :param serverout: set by the library and should be sent to the client. 44 :param serveroutlen: length of `serverout`. 45 46 47Return Value 48============ 49 50SASL callback functions should return SASL return codes. 51See sasl.h for a complete list. :c:macro:`SASL_CONTINUE` indicates success 52and that there are more steps needed in the authentication. :c:macro:`SASL_OK` 53indicates that the authentication is complete. 54 55Other return codes indicate errors and should either be handled or the authentication 56session should be quit. 57 58See Also 59======== 60 61:rfc:`4422`,:saslman:`sasl(3)`, 62:saslman:`sasl_server_init(3)`, :saslman:`sasl_server_new(3)`, 63:saslman:`sasl_server_start(3)`, :saslman:`sasl_errors(3)` 64