SASL_CLIENT_NEW(3SASL) Simple Authentication Security Layer Library Functions


NAME


sasl_client_new - create a new client authentication object

SYNOPSIS


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

int sasl_client_new(const char *service, const char *serverFQDN,
const char *iplocalport, const char *ipremoteport,
const sasl_callback_t *prompt_supp, unsigned flags,
sasl_conn_t **pconn);


DESCRIPTION


Use the sasl_client_new() interface to create a new SASL context. This
SASL context will be used for all SASL calls for one connection. The
context handles both authentication and the integrity and encryption
layers after authentication.

PARAMETERS


service
The registered name of the service that uses SASL,
usually the protocol name, for example, IMAP.


serverFQDN
The fully qualified domain name of the server, for
example, serverhost.cmu.edu.


iplocalport


The IP and port of the local side of the connection, or
NULL. If iplocalport is NULL, mechanisms that require IP
address information are disabled. The iplocalport string
must be in one of the following formats:

o a.b.c.d:port (IPv6)

o [e:f:g:h:i:j:k:l]:port (IPv6)

o [e:f:g:h:i:j:a.b.c.d]:port (IPv6)

o a.b.c.d;port (IPv4)

o e:f:g:h:i:j:k:l;port (IPv6)

o e:f:g:h:i:j:a.b.c.d;port (IPv6)


ipremoteport
The IP and port of the remote side of the connection, or
NULL.


prompt_supp
A list of the client interactions supported that are
unique to this connection. If this parameter is NULL,
the global callbacks specified in sasl_client_init(3SASL)
are used.


flags
Usage flags. For clients, the flag SASL_NEED_PROXY is
available.


pconn
The connection context allocated by the library. The
pconn structure is used for all future SASL calls for
this connection.


RETURN VALUES


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

ERRORS


SASL_OK
The call to sasl_client_new() was successful.


SASL_NOMECH
No mechanishm meets the requested properties.


SASL_BADPARAM
There is an error in the configuration file or passed
parameters.


SASL_NOMEM
There is not enough memory to complete the operation.


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 |
+--------------------+-----------------+
|Interface Stability | Evolving |
+--------------------+-----------------+
|MT-Level | Safe |
+--------------------+-----------------+

SEE ALSO


sasl_client_init(3SASL), sasl_errors(3SASL), attributes(5)


August 27, 2003 SASL_CLIENT_NEW(3SASL)