Provided by: libldap-dev_2.5.18+dfsg-0ubuntu0.22.04.2_amd64 bug

NAME

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

LIBRARY

       OpenLDAP LDAP (libldap, -lldap)

SYNOPSIS

       #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);

DESCRIPTION

       These routines are used to manipulate structures used for LDAP controls.

       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.

SEE ALSO

       ldap(3), ldap_error(3)

ACKNOWLEDGEMENTS

       OpenLDAP   Software   is   developed   and   maintained   by    The    OpenLDAP    Project
       <http://www.openldap.org/>.   OpenLDAP Software is derived from the University of Michigan
       LDAP 3.3 Release.