ldap_extended_operation - Extends the LDAP operations to the LDAP server.
#include <ldap.h> int ldap_extended_operation( LDAP *ld, const char *requestoid, const struct berval *requestdata, LDAPControl **sctrls, LDAPControl **cctrls, int *msgidp ); int ldap_extended_operation_s( LDAP *ld, const char *requestoid, const struct berval *requestdata, LDAPControl **sctrls, LDAPControl **cctrls, char **retoidp, struct berval **retdatap );
LDAP_EXTENDED_OPERATION(3oldap)
NAME
ldap_extended_operation, ldap_extended_operation_s - Extends the LDAP
operations to the LDAP server.
LIBRARY
OpenLDAP LDAP (libldap, -lldap)
SYNOPSIS
#include <ldap.h>
int ldap_extended_operation(
LDAP *ld,
const char *requestoid,
const struct berval *requestdata,
LDAPControl **sctrls,
LDAPControl **cctrls,
int *msgidp );
int ldap_extended_operation_s(
LDAP *ld,
const char *requestoid,
const struct berval *requestdata,
LDAPControl **sctrls,
LDAPControl **cctrls,
char **retoidp,
struct berval **retdatap );
DESCRIPTION
The ldap_extended_operation_s() routine is used to synchronously per-
form an LDAP extended operation. It takes requestoid, which points to
a dotted-decimal OID string identifying the extended operation to per-
form. requestdata is the data required for the request, sctrls is an
array of LDAPControl structures to use with this extended operation,
cctrls is an array of LDAPControl structures that list the client con-
trols to use with this extended operation.
The output parameter retoidp points to a dotted-decimal OID string
returned by the LDAP server. The memory used by the string should be
freed with the ldap_memfree(3) function. The output parameter retdatap
points to a pointer to a berval structure that contains the returned
data. If no data is returned by the server, the pointer is set this to
NULL. The memory used by this structure should be freed with the
ber_bvfree(3) function.
The ldap_extended_operation() works just like ldap_extended_opera-
tion_s(), but the operation is asynchronous. It provides the message
id of the request it initiated in the integer pointed to be msgidp.
The result of this operation can be obtained by calling ldap_result(3).
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------------------+
|Availability | system/network/ldap/openldap |
+---------------+------------------------------+
|Stability | Pass-through uncommitted |
+---------------+------------------------------+
SEE ALSO
ber_bvfree(3), ldap_memfree(3), ldap_parse_extended_result(3),
ldap_result(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.
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from ftp://ftp.openldap.org/pub/OpenLDAP/openl-
dap-release/openldap-2.4.59.tgz.
Further information about this software can be found on the open source
community website at http://www.openldap.org/.
OpenLDAP 2.4.59 2021/06/03
LDAP_EXTENDED_OPERATION(3oldap)