gsasl_step(3)

NAME
gsasl_step - API function

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 gsasl_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 <bug-gsasl@gnu.org>.
General guidelines for reporting bugs: https://www.gnu.org/gethelp/
GNU SASL home page: https://www.gnu.org/software/gsasl/

COPYRIGHT
Copyright © 2002-2026 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.

SEE ALSO
The full documentation for gsasl is maintained as a Texinfo manual. If the info and gsasl programs are properly installed at your site, the command

    info gsasl

should give you access to the complete manual. As an alternative you may obtain the manual from:

    https://www.gnu.org/software/libidn/gsasl/manual/