man pages section 3: Networking Library Functions

Exit Print View

Updated: July 2014
 
 

sasl_checkpass(3SASL)

Name

sasl_checkpass - check a plaintext password

Synopsis

cc [ flag ... ] file ... –lsasl   [ library ... ]
#include <sasl/sasl.h>

int sasl_checkpass(sasl_conn_t *conn, const char *user, unsigned userlen,
     const char *pass, unsigned passlen);

Description

The sasl_checkpass() interface checks a plaintext password. The sasl_checkpass() interface is used for protocols that had a login method before SASL, for example, the LOGIN command in IMAP. The password is checked with the pwcheck_method .

The sasl_checkpass() interface is a server interface. You cannot use it to check passwords from a client.

The sasl_checkpass() interface checks the posible repositories until it succeeds or there are no more repositories. If sasl_server_userdb_checkpass_t is registered, sasl_checkpass() tries it first.

Use the pwcheck_method SASL option to specify which pwcheck methods to use.

The sasl_checkpass() interface supports the transition of passwords if the SASL option auto_transition is on.

If user is NULL, check is plaintext passwords are enabled.

Parameters

conn

The sasl_conn_t for which the request is being made

pass

Plaintext password to check

passlen

The length of pass

user

User to query in current user_domain

userlen

The length of username.

Return Values

sasl_checkpass() returns an integer that corresponds to a SASL error code.

Errors

SASL_OK

Indicates that the authentication is complete

All other error codes indicate an error situation that must be handled, or the authentication session should be quit. See sasl_errors(3SASL) for information on SASL error codes.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
system/library/security/libsasl
Interface Stability
Committed
MT-Level
Safe

See also

sasl_errors(3SASL), attributes(5)