ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/ldap_cmp_ext.htm

213 lines
6.1 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
<title>ldap_compare_ext()--Perform an LDAP Compare Operation with
Controls</title>
<!-- Begin Header Records ========================================== -->
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- Direct1 SCRIPT J converted by B2H R4.1 (346) (CMS) by V2KEA304 -->
<!-- at RCHVMW2 on 17 Feb 1999 at 11:05:09 -->
<!-- This file has undergone html cleanup on 2/18/02 by JET -->
<!--File Edited March 2001 -->
<!--End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<!-- Java sync-link -->
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript">
</script>
<a name="Top_Of_Page"></a>
<h2>ldap_compare_ext()--Perform an LDAP Compare Operation with Controls</h2>
<div class="box" style="width: 70%;">
<br>
&nbsp;&nbsp;Syntax<br>
<pre>
#include &lt;ldap.h&gt;
struct berval {
unsigned long bv_len;
char *bv_val;
};
int ldap_compare_ext(
LDAP *<em>ld</em>,
const char *<em>dn</em>,
const char *<em>attr</em>,
const berval *<em>bvalue</em>,
LDAPControl **<em>serverctrls</em>,
LDAPControl **<em>clientctrls</em>,
int *<em>msgidp</em>)
</pre>
<br>
&nbsp;&nbsp;Library Name/Service Program: QSYS/QGLDCLNT<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The <strong>ldap_compare_ext()</strong> function is used to perform an LDAP
compare operation with controls. The <strong>ldap_compare_ext()</strong> API
initiates an asynchronous compare operation and returns the constant <strong>
LDAP_SUCCESS</strong> if the request was successfully sent, or another LDAP
error code if not.</p>
<br>
<h3>Authorities and Locks</h3>
<p>No i5/OS authority is required.</p>
<br>
<h3>Parameters</h3>
<dl>
<dt><strong><em>ld</em></strong></dt>
<dd>(Input) The LDAP pointer returned by a previous call to
<a href="ldap_init.htm">ldap_init()</a>,
<a href="ldap_ssl_init.htm">ldap_ssl_init()</a>, or
<a href="ldap_open.htm">ldap_open()</a>.<br><br></dd>
<dt><strong><em>dn</em></strong></dt>
<dd>(Input The distinguished name (DN) of the entry upon which to perform the
compare.<br><br></dd>
<dt><strong><em>attr</em></strong></dt>
<dd>(Input) The attribute type to use in the comparison.<br><br></dd>
<dt><strong><em>bvalue</em></strong></dt>
<dd>(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.<br><br></dd>
<dt><strong><em>serverctrls</em></strong></dt>
<dd>(Input) Specifies a list of LDAP server controls. This parameter may be set
to null. See <a href="ldap_controls.htm">LDAP Controls</a> for more information
about server controls.<br><br></dd>
<dt><strong><em>clientctrls</em></strong></dt>
<dd>(Input) A list of LDAP client controls. This parameter may be set
to null. See <a href="ldap_controls.htm">LDAP Controls</a> for more information
about client controls.<br><br></dd>
<dt><strong><em>msgidp</em></strong></dt>
<dd>(Output) This result parameter is set to the message ID of the request if
the <strong>ldap_compare_ext()</strong> call succeeds.</dd>
</dl>
<br>
<h3>Return Value</h3>
<dl>
<dt><strong>LDAP_SUCCESS</strong></dt>
<dd>if the request was successfully sent. If successful, <strong>
ldap_compare_ext()</strong> places the message ID of the request in
*<em>msgidp</em>. A subsequent call to <a href="ldap_result.htm">
ldap_result()</a> can be used to obtain the result of the operation. Once the
operation has completed, <a href="ldap_result.htm">ldap_result()</a> 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
(<strong>LDAP_COMPARE_TRUE</strong> or <strong>
LDAP_COMPARE_FALSE</strong>).<br>
<br>
</dd>
<dt><strong>another LDAP error code</strong></dt>
<dd>if the request was not successful.</dd>
</dl>
<br>
<h3>Error Conditions</h3>
<p>The <strong>ldap_compare_ext()</strong> API will return an LDAP error code
if not successful. See <a href="ldap_error_condt.htm">LDAP Client API Error
Conditions</a> for possible LDAP error code values.</p>
<br>
<h3>Error Messages</h3>
<p>The following message may be sent from this function.</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td align="left" valign="top">CPF3CF2 E</td>
<td align="left" valign="top">Error(s) occurred during running of
ldap_compare_ext API.</td>
</tr>
</table>
<br>
<br>
<h3>Related Information</h3>
<ul>
<li><a href="ldap_compare.htm">ldap_compare()</a> -- Asynchronous compare to a
directory entry.</li>
<li><a href="ldap_compare_s.htm">ldap_compare_s()</a> -- Synchronous compare to
a directory entry.</li>
<li><a href="ldap_cmp_ext_s.htm">ldap_compare_ext_s()</a> -- Synchronous
compare to a directory entry with controls.</li>
</ul>
<p>The <strong>ldap_compare_ext()</strong> API supports LDAP V3 server controls
and client controls.</p>
<br>
<hr>
API introduced: V4R5
<hr>
<table align="center" cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"dirserv1.htm">LDAP APIs</a> | <a href="aplist.htm">APIs by
category</a></td>
</tr>
</table>
</body>
</html>