Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

sasl_callbacks (3sasl)

Name

sasl_callbacks - How to work with SASL callbacks

Synopsis

#include <sasl/sasl.h>

Description

sasl_callbacks(3sasl)           SASL man pages           sasl_callbacks(3sasl)



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 4422



ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+----------------------------------+
       |ATTRIBUTE TYPE |         ATTRIBUTE VALUE          |
       +---------------+----------------------------------+
       |Availability   | system/library/security/libsasl2 |
       +---------------+----------------------------------+
       |Stability      | Pass-through volatile            |
       +---------------+----------------------------------+

SEE ALSO
       sasl(3SASL),        sasl_errors(3SASL),        sasl_authorize_t(3SASL),
       sasl_log_t(3SASL),   sasl_getpath_t(3SASL),  sasl_getconfpath_t(3SASL),
       sasl_verifyfile_t(3SASL),    sasl_canon_user_t(3SASL),     sasl_getsim-
       ple(3SASL),      sasl_getsecret_t(3SASL),     sasl_chalprompt_t(3SASL),
       sasl_getrealm_t(3SASL),                        sasl_authorize_t(3SASL),
       sasl_server_userdb_checkpass_t(3SASL),          sasl_server_userdb_set-
       pass_t(3SASL)



NOTES
       Source code for open source software components in Oracle  Solaris  can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source was downloaded  from   ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-
       sasl-2.1.26.tar.gz.

       Further information about this software can be found on the open source
       community website at https://www.cyrusimap.org/sasl/.



SASL                           12 February 2006          sasl_callbacks(3sasl)