ldap_control_create

LDAP_CONTROLS(3)           Library Functions Manual           LDAP_CONTROLS(3)

NAME
       ldap_control_create,   ldap_control_find,  ldap_control_dup,  ldap_con-
       trols_dup, ldap_control_free, ldap_controls_free - LDAP control manipu-
       lation 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 con-
       trols.

       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_<con-
       trol 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 con-
       trol 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 han-
       dling controls in responses consists in going through the array of con-
       trols,  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 Uni-
       versity of Michigan LDAP 3.3 Release.

OpenLDAP                          2020/01/30                  LDAP_CONTROLS(3)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024 Hurricane Electric. All Rights Reserved.