SYNOPSIS
#include <gsasl.h>int gsasl_step(Gsasl_session * sctx, const char * input, size_t input_len, char ** output, size_t * output_len);
ARGUMENTS
- Gsasl_session * sctx
- libgsasl session handle.
- const char * input
- input byte array.
- size_t input_len
- size of input byte array.
- char ** output
- newly allocated output byte array.
- size_t * output_len
- pointer to output variable with size of output byte array.
DESCRIPTION
Perform one step of SASL authentication. This reads data from the other end (from input and input_len), processes it (potentially invoking callbacks to the application), and writes data to server (into newly allocated variable output and output_len that indicate the length of output).The contents of the output buffer is unspecified if this functions returns anything other than GSASL_OK or GSASL_NEEDS_MORE. If this function return GSASL_OK or GSASL_NEEDS_MORE, however, the output buffer is allocated by this function, and it is the responsibility of caller to deallocate it by calling free (output).
RETURN VALUE
Returns GSASL_OK if authenticated terminated successfully, GSASL_NEEDS_MORE if more data is needed, or error code.REPORTING BUGS
Report bugs to <[email protected]>. GNU SASL home page: http://www.gnu.org/software/gsasl/ General help using GNU software: http://www.gnu.org/gethelp/COPYRIGHT
Copyright © 2002-2012 Simon Josefsson.Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.