.\" DO NOT MODIFY THIS FILE! It was generated by gdoc. .TH "gsasl_step" 3 "1.10.0" "gsasl" "gsasl" .SH NAME gsasl_step \- API function .SH SYNOPSIS .B #include .sp .BI "int gsasl_step(Gsasl_session * " sctx ", const char * " input ", size_t " input_len ", char ** " output ", size_t * " output_len ");" .SH ARGUMENTS .IP "Gsasl_session * sctx" 12 libgsasl session handle. .IP "const char * input" 12 input byte array. .IP "size_t input_len" 12 size of input byte array. .IP "char ** output" 12 newly allocated output byte array. .IP "size_t * output_len" 12 pointer to output variable with size of output byte array. .SH "DESCRIPTION" Perform one step of SASL authentication. This reads data from the other end (from \fIinput\fP and \fIinput_len\fP ), processes it (potentially invoking callbacks to the application), and writes data to server (into newly allocated variable \fIoutput\fP and \fIoutput_len\fP that indicate the length of \fIoutput\fP ). The contents of the \fIoutput\fP buffer is unspecified if this functions returns anything other than \fBGSASL_OK\fP or \fBGSASL_NEEDS_MORE\fP. If this function return \fBGSASL_OK\fP or \fBGSASL_NEEDS_MORE\fP, however, the \fIoutput\fP buffer is allocated by this function, and it is the responsibility of caller to deallocate it by calling free ( \fIoutput\fP ). Return value: Returns \fBGSASL_OK\fP if authenticated terminated successfully, \fBGSASL_NEEDS_MORE\fP if more data is needed, or error code. .SH "REPORTING BUGS" Report bugs to . .br General guidelines for reporting bugs: http://www.gnu.org/gethelp/ .br GNU SASL home page: http://www.gnu.org/software/gsasl/ .SH COPYRIGHT Copyright \(co 2002-2021 Simon Josefsson. .br 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. .SH "SEE ALSO" The full documentation for .B gsasl is maintained as a Texinfo manual. If the .B info and .B gsasl programs are properly installed at your site, the command .IP .B info gsasl .PP should give you access to the complete manual. As an alternative you may obtain the manual from: .IP .B http://www.gnu.org/software/gsasl/manual/ .PP