DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

ldap_init(3)




LDAP_OPEN(3)           C LIBRARY FUNCTIONS           LDAP_OPEN(3)


NAME

     ldap_init, ldap_open - Initialize the LDAP library and  open
     a connection to an LDAP server


LIBRARY

     OpenLDAP LDAP (libldap, -lldap)


SYNOPSIS

     #include <ldap.h>

     LDAP *ldap_open(host, port)
     char *host;
     int port;

     LDAP *ldap_init(host, port)
     char *host;
     int port;


DESCRIPTION

     ldap_open() opens a connection to an LDAP server  and  allo-
     cates  an  LDAP structure which is used to identify the con-
     nection  and   to   maintain   per-connection   information.
     ldap_init() allocates an LDAP structure but does not open an
     initial connection.  One  of  these  two  routines  must  be
     called before any operations are attempted.

     ldap_open() takes host,  the  hostname  on  which  the  LDAP
     server  is  running,  and  port, the port number to which to
     connect.  If  the  default  IANA-assigned  port  of  389  is
     desired,  LDAP_PORT  should be specified for port.  The host
     parameter may contain a blank-separated list of hosts to try
     to  connect  to, and each host may optionally by of the form
     host:port.  If present, the :port overrides the port parame-
     ter  to  ldap_open().  Upon successfully making a connection
     to an LDAP server, ldap_open() returns a pointer to an  LDAP
     structure  (defined below), which should be passed to subse-
     quent calls  to  ldap_bind(),  ldap_search(),  etc.  Certain
     fields  in  the  LDAP  structure can be set to indicate size
     limit, time limit, and how aliases are handled during opera-
     tions.  See <ldap.h> for more details.

          typedef struct ldap {
               /* ... other stuff you should not mess with ... */
               char      ld_lberoptions;
               int       ld_deref;
          #define LDAP_DEREF_NEVER 0
          #define LDAP_DEREF_SEARCHING  1
          #define LDAP_DEREF_FINDING    2
          #define LDAP_DEREF_ALWAYS     3
               int       ld_timelimit;
               int       ld_sizelimit;
          #define LDAP_NO_LIMIT         0

OpenLDAP LDVERSION  Last change: RELEASEDATE                    1

LDAP_OPEN(3)           C LIBRARY FUNCTIONS           LDAP_OPEN(3)

               int       ld_errno;
               char      *ld_error;
               char      *ld_matched;
               int       ld_refhoplimit;
               unsigned long  ld_options;
          #define LDAP_OPT_REFERRALS      0x00000002 /* set by default */
          #define LDAP_OPT_RESTART 0x00000004
               /* ... other stuff you should not mess with ... */
          } LDAP;

     ldap_init() acts just like ldap_open(), but does not open  a
     connection  to  the LDAP server.  The actual connection open
     will occur when the first operation is attempted.   At  this
     time, ldap_init() is preferred. ldap_open() will be depreci-
     ated in a


ERRORS

     If an error occurs, these  routines  will  return  NULL  and
     errno should be set appropriately.


OPTIONS

     Options that affect a particular LDAP instance may be set by
     modifying  the ld_options field in the LDAP structure.  This
     field  is  set  to  LDAP_OPT_REFERRALS  in  ldap_open()  and
     ldap_init(),  which causes the library to automatically fol-
     low referrals to other  servers  that  may  be  returned  in
     response to an LDAP operation.

     The other supported option is LDAP_OPT_RESTART, which if set
     will  cause the LDAP library to restart the select(2) system
     call when it is interrupted by the system  (i.e.,  errno  is
     set  to  EINTR).  This option is not supported on the Macin-
     tosh and under MS-DOS.

     An option can be turned off by clearing the appropriate  bit
     in the ld_options field.


NOTES

     There are other elements in  the  LDAP  structure  that  you
     should not change. You should not make any assumptions about
     the order of elements in the LDAP structure.


SEE ALSO

     ldap(3), ldap_bind(3), errno(3)


ACKNOWLEDGEMENTS

     OpenLDAP is developed and maintained by The OpenLDAP Project
     (http://www.openldap.org/).    OpenLDAP   is   derived  from
     University of Michigan LDAP 3.3 Release.

OpenLDAP LDVERSION  Last change: RELEASEDATE                    2


Man(1) output converted with man2html