Man Linux: Main Page and Category List


       ldap_control_create,        ldap_control_find,        ldap_control_dup,
       ldap_controls_dup, ldap_control_free, ldap_controls_free - LDAP control
       manipulation routines


       OpenLDAP LDAP (libldap, -lldap)


       #include <ldap.h>

       int  ldap_control_create(const char *oid, int iscritical, struct berval
       *value, int dupval, LDAPControl **ctrlp);

       LDAPControl *ldap_control_find( const char *oid,  LDAPControl  **ctrls,
       LDAPControl ***nextctrlp);

       LDAPControl *ldap_control_dup(LDAPControl *ctrl);

       LDAPControl **ldap_controls_dup(LDAPControl **ctrls);

       void ldap_control_free(LDAPControl *ctrl);

       void ldap_controls_free(LDAPControl **ctrls);


       These  routines  are  used  to  manipulate  structures  used  for  LDAP

       ldap_control_create() creates a control with the  specified  OID  using
       the contents of the value parameter for the control value, if any.  The
       content of value is duplicated if dupval is non-zero.   The  iscritical
       parameter  must be non-zero for a critical control. The created control
       is returned in the ctrlp parameter.  The routine  returns  LDAP_SUCCESS
       on  success or some other error code on failure.  The content of value,
       for supported control types, can be prepared using helpers provided  by
       this    implementation    of    libldap,    usually    in    the   form
       ldap_create_<control name>_control_value().  Otherwise, it can be  BER-
       encoded using the functionalities of liblber.

       ldap_control_find()  searches  the  NULL-terminated  ctrls  array for a
       control whose OID matches the oid parameter.   The  routine  returns  a
       pointer  to  the  control  if  found, NULL otherwise.  If the parameter
       nextctrlp is not NULL, on return it will point to the next  control  in
       the  array,  and  can  be passed to the ldap_control_find() routine for
       subsequent calls, to find further occurrences of the same control type.
       The  use  of  this  function  is  discouraged;  the  recommended way of
       handling controls in responses consists in going through the  array  of
       controls,  dealing  with  each  of them in the returned order, since it
       could matter.

       ldap_control_dup() duplicates  an  individual  control  structure,  and
       ldap_controls_dup() duplicates a NULL-terminated array of controls.

       ldap_control_free()   frees   an   individual  control  structure,  and
       ldap_controls_free() frees a NULL-terminated array of controls.


       ldap(3), ldap_error(3)


       OpenLDAP Software is developed and maintained by The  OpenLDAP  Project
       <>.    OpenLDAP   Software   is   derived  from
       University of Michigan LDAP 3.3 Release.