mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
6dcd9a9f77
(Assumes soelim is generally available)
109 lines
3.0 KiB
Groff
109 lines
3.0 KiB
Groff
.TH LDAP_OPEN 3 "RELEASEDATE" "OpenLDAP LDVERSION"
|
|
.\" $OpenLDAP$
|
|
.\" Copyright 1998-2007 The OpenLDAP Foundation All Rights Reserved.
|
|
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
|
|
.SH NAME
|
|
ldap_init, ldap_initialize, ldap_open \- Initialize the LDAP library and open a connection to an LDAP server
|
|
.SH LIBRARY
|
|
OpenLDAP LDAP (libldap, -lldap)
|
|
.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;
|
|
.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()
|
|
allocates an LDAP structure but does not open an initial connection. One
|
|
of these three routines must be called before any operations are attempted.
|
|
.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
|
|
.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.
|
|
.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.
|
|
.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.
|
|
.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.
|
|
.SH SEE ALSO
|
|
.BR ldap (3),
|
|
.BR ldap_bind (3),
|
|
.BR ldap_get_option (3),
|
|
.BR ldap_set_option (3),
|
|
.BR errno (3)
|
|
.SH ACKNOWLEDGEMENTS
|
|
.so ../Project
|