NAME


sasl_callbacks - How to work with SASL callbacks

SYNOPSIS


#include <sasl/sasl.h>

DESCRIPTION


sasl_callbacks are used when the application needs some information from the application. Common reasons are getting for getting usernames and passwords. A client MUST specify what callbacks they support in the sasl_client/server_init() or sasl_client/server_new() calls. If an authentication mechanism needs a callback that the application does not state it supports it cannot be used.

If a callback has an id parameter that should be checked to make sure you are giving the appropriate value.

If an application is using the client side of the library functions to handle the callbacks are not necessary. Instead the application may deal with callbacks via SASL_INTERACT’s. See sasl_client_start/step() for more information.

The list of callbacks follows:

Common Callbacks


sasl_getopt_t
 Get an option value
sasl_log_t
 Log message handler
sasl_getpath_t
 Get path to search for plugins (e.g. SASL mechanisms)
sasl_verifyfile_t
 Verify files for use by SASL
sasl_canon_user_t
 Username canonicalization function.

Client-only Callbacks


sasl_getsimple_t
 Get user/language list
sasl_getsecret_t
 Get authentication secret
sasl_chalprompt_t
 Display challenge and prompt for response
sasl_getrealm_t
 Get the realm for authentication

Server-only Callbacks


sasl_authorize_t
 Authorize policy callback
sasl_server_userdb_checkpass_t
 verify plaintext password
sasl_server_userdb_setpass_t
 set plaintext password
sasl_getconfpath_t
 Get path to search for SASL configuration file (server side only). New in SASL 2.1.22.

RETURN VALUE


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

CONFORMING TO


RFC 2222

SEE ALSO


sasl(3), sasl_errors(3), sasl_authorize_t(3), sasl_log_t(3), sasl_getpath_t(3), sasl_getconfpath_t(3), sasl_verifyfile_t(3), sasl_canon_user_t(3), sasl_getsimple(3), sasl_getsecret_t(3), sasl_chalprompt_t(3), sasl_getrealm_t(3), sasl_authorize_t(3), sasl_server_userdb_checkpass_t(3), sasl_server_userdb_setpass_t(3)

openSUSE Logo

Contents