ldap_compare_ext()--Perform an LDAP Compare Operation with Controls


  Syntax
 #include <ldap.h>

 struct berval {
                 unsigned long    bv_len;
                 char             *bv_val;
  };

 int ldap_compare_ext(
                 LDAP          *ld,
                 const char    *dn,
                 const char    *attr,
                 const berval  *bvalue,
                 LDAPControl  **serverctrls,
                 LDAPControl  **clientctrls,
                 int           *msgidp)

  Library Name/Service Program: QSYS/QGLDCLNT

  Default Public Authority: *USE

  Threadsafe: Yes

The ldap_compare_ext() function is used to perform an LDAP compare operation with controls. The ldap_compare_ext() API initiates an asynchronous compare operation and returns the constant LDAP_SUCCESS if the request was successfully sent, or another LDAP error code if not.


Authorities and Locks

No IBM® i authority is required.


Parameters

ld
(Input) The LDAP pointer returned by a previous call to ldap_init(), ldap_ssl_init(), or ldap_open().

dn
(Input The distinguished name (DN) of the entry upon which to perform the compare.

attr
(Input) The attribute type to use in the comparison.

bvalue
(Input) The attribute value to compare against the value in the entry. This is a pointer to a struct berval, making it possible to compare binary values.

serverctrls
(Input) Specifies a list of LDAP server controls. This parameter may be set to null. See Controls for LDAP APIs for more information about server controls.

clientctrls
(Input) A list of LDAP client controls. This parameter may be set to null. See Controls for LDAP APIs for more information about client controls.

msgidp
(Output) This result parameter is set to the message ID of the request if the ldap_compare_ext() call succeeds.

Return Value

LDAP_SUCCESS
if the request was successfully sent. If successful, ldap_compare_ext() places the message ID of the request in *msgidp. A subsequent call to ldap_result() can be used to obtain the result of the operation. Once the operation has completed, ldap_result() returns a result that contains the status of the operation in the form of an error code. The error code indicates if the operation completed successful (LDAP_COMPARE_TRUE or LDAP_COMPARE_FALSE).

another LDAP error code
if the request was not successful.

Error Conditions

The ldap_compare_ext() API will return an LDAP error code if not successful. See LDAP Client API Error Conditions for possible LDAP error code values.


Error Messages

The following message may be sent from this function.

Message ID Error Message Text
CPF3CF2 E Error(s) occurred during running of ldap_compare_ext API.


Related Information

The ldap_compare_ext() API supports LDAP V3 server controls and client controls.



API introduced: V4R5

[ Back to top | LDAP APIs | APIs by category ]