- Home
- Cyrus IMAP
- Download
- Contribute

# Cyrus SASL

# sasl_server_userdb_checkpass_t - Plaintext Password Verification Callback

## Synopsis

    #include <sasl/sasl.h>

    int sasl_server_userdb_checkpass_t(sasl_conn_t *conn,
            void *context,
            const char *user,
            const char *pass,
            unsigned passlen,
            struct propctx *propctx)

## Description

int sasl_server_userdb_checkpass_t(sasl_conn_t *conn,
void *context,
const char *user,
const char *pass,
unsigned passlen,
struct propctx *propctx)

  sasl_server_userdb_checkpass_t() is used to verify a plaintext password against the callback supplier’s user database. This is to allow additional ways to encode the userPassword property.

  Parameters

    - conn – is the SASL connection context

    - context – context from the callback record

    - user – NUL terminated user name with user@realm syntax

    - pass – password to check (may not be NUL terminated)

    - passlen – length of the password

    - propctx – property context to fill in with userPassword

## Return Value

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

Other return codes indicate errors and should be handled.

## See Also

RFC 4422,:saslman:sasl(3), sasl_callbacks(3) sasl_errors(3), sasl_server_userdb_setpass_t(3)