sasl_encode man page
sasl_encode — Encode data for transport to authenticated host
#include <sasl/sasl.h> int sasl_encode(sasl_conn_t *conn, const char * input, unsigned inputlen, const char ** output, unsigned * outputlen); int sasl_encodev(sasl_conn_t *conn, const struct iovec * invec, unsigned numiov, const char ** output, unsigned * outputlen);
sasl_encode encodes data to be sent to be sent to a remote host who we've had a successful authentication session with. If there is a negotiated security the data in signed/encrypted and the output should be sent without modification to the remote host. If there is no security layer the output is identical to the input.
sasl_encodev does the same, but for a struct iovec instead of a character buffer.
output contains the encoded data and is allocated/freed by the library.
Returns SASL_OK on success. See sasl_errors(3) for meanings of other return codes.
sasl(3), sasl_errors(3), sasl_decode(3)
sasl_encodev(3) is an alias of sasl_encode(3).