openldap/doc/man/man3/ldap_open.3

109 lines
3.0 KiB
Groff
Raw Normal View History

2002-06-13 11:59:10 +08:00
.TH LDAP_OPEN 3 "RELEASEDATE" "OpenLDAP LDVERSION"
1999-09-12 12:41:47 +08:00
.\" $OpenLDAP$
2007-01-03 04:00:42 +08:00
.\" Copyright 1998-2007 The OpenLDAP Foundation All Rights Reserved.
1999-09-12 12:41:47 +08:00
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
1998-08-09 08:43:13 +08:00
.SH NAME
ldap_init, ldap_initialize, ldap_open \- Initialize the LDAP library and open a connection to an LDAP server
2002-06-21 15:32:54 +08:00
.SH LIBRARY
2002-06-22 05:25:38 +08:00
OpenLDAP LDAP (libldap, -lldap)
1998-08-09 08:43:13 +08:00
.SH SYNOPSIS
.nf
.ft B
#include <ldap.h>
.LP
.ft B
LDAP *ldap_open(host, port)
.ft
char *host;
int port;
.LP
.ft B
LDAP *ldap_init(host, port)
.ft
char *host;
int port;
.LP
.ft B
int ldap_initialize(ldp, uri)
.ft
LDAP **ldp;
char *uri;
1998-08-09 08:43:13 +08:00
.SH DESCRIPTION
.LP
.B ldap_open()
opens a connection to an LDAP server and allocates an LDAP
structure which is used to identify
the connection and to maintain per-connection information.
.B ldap_init()
allocates an LDAP structure but does not open an initial connection.
.B ldap_initialize()
1998-08-09 08:43:13 +08:00
allocates an LDAP structure but does not open an initial connection. One
of these three routines must be called before any operations are attempted.
1998-08-09 08:43:13 +08:00
.LP
.B ldap_open()
takes \fIhost\fP, the hostname on which the LDAP server is
running, and \fIport\fP, the port number to which to connect. If the default
IANA-assigned port of 389 is desired, LDAP_PORT should be specified for
\fIport\fP. The \fIhost\fP parameter may contain a blank-separated list
of hosts to try to connect to, and each host may optionally by of the form
\fIhost:port\fP. If present, the \fI:port\fP overrides the \fIport\fP
parameter to
.BR ldap_open() .
Upon successfully making a connection to an
LDAP server,
.B ldap_open()
returns a pointer to an opaque LDAP structure, which should be passed
to subsequent calls to
1998-08-09 08:43:13 +08:00
.BR ldap_bind() ,
.BR ldap_search() ,
etc. Certain fields in the LDAP structure can be set to indicate size limit,
time limit, and how aliases are handled during operations; read and write access
to those fields must occur by calling
.BR ldap_get_option (3)
and
.BR ldap_set_option (3)
respectively, whenever possible.
1998-08-09 08:43:13 +08:00
.LP
.B
ldap_init()
acts just like
.BR ldap_open() ,
but does not open a connection
to the LDAP server. The actual connection open will occur when the
first operation is attempted.
1998-08-09 08:43:13 +08:00
.LP
.B ldap_initialize()
acts like
.BR ldap_init() ,
but it returns an integer indicating either success or the failure reason,
and it allows to specify details for the connection in the schema portion
of the URI.
1998-08-09 08:43:13 +08:00
.LP
At this time,
.B ldap_open()
and
.B ldap_init()
are deprecated in favor of
.BR ldap_initialize() ,
essentially because the latter allows to specify a schema in the URI
and it explicitly returns an error code.
.SH ERRORS
If an error occurs,
.B ldap_open()
and
.B ldap_init()
will return NULL and errno should be set appropriately.
.B ldap_initialize()
will directly return the LDAP code associated to the error (or
.I LDAP_SUCCESS
in case of success);
errno should be set as well whenever appropriate.
1998-08-09 08:43:13 +08:00
.SH SEE ALSO
.BR ldap (3),
.BR ldap_bind (3),
.BR ldap_get_option (3),
.BR ldap_set_option (3),
1998-08-09 08:43:13 +08:00
.BR errno (3)
1998-10-25 09:41:42 +08:00
.SH ACKNOWLEDGEMENTS
.so ../Project