sasl_server_userdb_checkpass_t(3) Plaintext Password Verification Callback


#include <sasl/sasl.h>

int sasl_canon_user_t(sasl_conn_t *conn,
void *context,
const char *user, unsigned ulen,
unsigned flags,
const char *user_realm,
char *out_user, unsigned out_umax,
unsigned *out_ulen)


sasl_canon_user_t Is the callback for an application-supplied user canonicalization function. This function is subject to the requirements that all user canonicalization functions are: It must copy the result into the output buffers, but the output buffers and the input buffers may be the same.

context context from the callback record

user and ulen Un-canonicalized username (and length)

flags Either SASL_CU_AUTHID (indicating the authentication ID is being canonicalized) or SASL_CU_AUTHZID (indicating the authorization ID is to be canonicalized) or a bitwise OR of the the two.

user_realm Realm of authentication.

out_user and out_umax and out_ulen The output buffer, max length, and actual length for the username.


SASL callback functions should return SASL return codes. See sasl.h for a complete list. SASL_OK indicates success.