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

295 lines
7.8 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<!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_result()--Retrieve Result of an Asynchronous LDAP Operation</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 -->
<!-- File Edited April 2001 -->
<!-- This file has undergone html cleanup on 2/19/02 by JET -->
<!--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_result()--Retrieve Result of an Asynchronous LDAP Operation</h2>
<br>
<div class="box" style="width: 70%;">
<br>
&nbsp;&nbsp;Syntax<br>
<pre>
#include &lt;sys/time.h&gt;
#include &lt;ldap.h&gt;
int ldap_result(
LDAP *<em>ld</em>,
int <em>msgid</em>,
int <em>all</em>,
struct timeval *<em>timeout</em>,
LDAPMessage **<em>result</em>)
</pre>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Library Name/Service Program: QSYS/QGLDCLNT<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The <strong>ldap_result()</strong> function is used to wait for and return
the result of an operation previously initiated by one of the LDAP asynchronous
operation functions (such as <a href="ldap_search.htm">ldap_search()</a> and <a
href="ldap_modify.htm">ldap_modify()</a>).<br>
</p>
<h3>Authorities and Locks</h3>
<p>No i5/OS authority is required.</p>
<br>
<h3>Parameters</h3>
<dl>
<dt><em>ld</em></dt>
<dd>(Input) Specifies 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>.</dd>
<dt><em>msgid</em></dt>
<dd>(Input) Specifies the message ID of the operation whose results are to be
returned. The parameter can be set to LDAP_RES_ANY if any result is
desired.</dd>
<dt><em>all</em></dt>
<dd>(Input) This parameter only has meaning for search results. For search
results, all is used to specify how many search result messages will be
returned on this call to <strong>ldap_result()</strong>. Specify LDAP_MSG_ONE
to retrieve one search result message (for example, a single entry). Specify
LDAP_MSG_ALL to request that all results of a search be received. <strong>
ldap_result()</strong> will wait until all results are received before
returning the results in a single chain. Specify LDAP_MSG_RECEIVED to indicate
that all results retrieved so far should be returned in the result chain.</dd>
<dt><em>timeout</em></dt>
<dd>(Input) Specifies how long in seconds to wait for results (as identified by
the supplied <em>msgid</em>) to be returned from ldap_result. A NULL value
causes <strong>ldap_result()</strong> to wait until results for the operation
identified by <em>msgid</em> are available. To poll, the timeout parameter
should be non-NULL, pointing to a zero-valued timeval structure.</dd>
<dt><em>result</em></dt>
<dd>(Output) Contains the result of the asynchronous operation identified by
<em>msgid</em>. This value should be freed by <a href="ldap_msgfree.htm">
ldap_msgfree()</a> when the result is no longer needed.</dd>
</dl>
<br>
<h3>Return Value</h3>
<dl>
<dt><strong>-1</strong></dt>
<dd>If <strong>ldap_result()</strong> was unsuccessful, sets the appropriate
LDAP error, and <a href="ldap_get_errno.htm">ldap_get_errno()</a> API can be
used to obtain the error code.<br>
<br>
</dd>
<dt><strong>0</strong></dt>
<dd>If ldap_result() times out or there is no message available.<br>
<br>
</dd>
<dt><strong>If successful,</strong></dt>
<dd>it returns one of the following result types:<br>
<br>
<table width="100%" cellpadding="5">
<tr>
<td width="40%" valign="top"><em>LDAP_RES_BIND</em></td>
<td width="60%" valign="top">0x61L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_SEARCH_ENTRY</em></td>
<td valign="top">0x64L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_SEARCH_RESULT</em></td>
<td valign="top">0x65L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_MODIFY</em></td>
<td valign="top">0x67L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_ADD</em></td>
<td valign="top">0x69L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_DELETE</em></td>
<td valign="top">0x6bL</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_MODRDN</em></td>
<td valign="top">0x6dL</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_COMPARE</em></td>
<td valign="top">0x6fL</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_SEARCH_REFERENCE</em></td>
<td valign="top">0X73L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_EXTENDED</em></td>
<td valign="top">0X78L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_EXTENDED_RES_NAME</em></td>
<td valign="top">0X8aL</td>
</tr>
<tr>
<td valign="top"><em>LDAP_EXTENDED_RES_VALUE</em></td>
<td valign="top">0X8bL</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_REFERRAL</em></td>
<td valign="top">0Xa3L</td>
</tr>
<tr>
<td valign="top"><em>LDAP_RES_ANY</em></td>
<td valign="top">(-1L)</td>
</tr>
</table>
<br>
</dd>
</dl>
<br>
<h3>Error Conditions</h3>
<p>If <strong>ldap_result()</strong> is not successful, <em>ld_errno</em> will
be set to indicate the error. See <a href="ldap_error_condt.htm">LDAP Client
API Error Conditions</a> for possible values of <em>ld_errno</em> field. Use <a
href="ldap_get_errno.htm">ldap_get_errno()</a> function to retrieve the error
information.</p>
<br>
<h3>Error Messages</h3>
<p>The following message may be sent from this function.</p>
<table width="100%" cellpadding="3">
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td width="15%" valign="top">CPF3CF2 E</td>
<td width="85%" valign="top">Error(s) occurred during running of ldap_result
API.</td>
</tr>
</table>
<br>
<br>
<h3>Related Information</h3>
<ul>
<li><a href="ldap_count_msg.htm">ldap_count_messages()</a> -- Count messages in
a result chain.</li>
<li><a href="ldap_first_entry.htm">ldap_first_entry()</a> -- Retrieve first
LDAP entry.</li>
<li><a href="ldap_first_msg.htm">ldap_first_message()</a> -- Retrieve first
LDAP message.</li>
<li><a href="ldap_first_ref.htm">ldap_first_reference()</a> -- Retrieve first
continuation reference in a chain of search results.</li>
<li><a href="ldap_msgfree.htm">ldap_msgfree()</a> -- Free LDAP result
message.</li>
<li><a href="ldap_msgid.htm">ldap_msgid()</a> -- Retrieve the message ID
associated with an LDAP message.</li>
<li><a href="ldap_msgtype.htm">ldap_msgtype()</a> -- Returns the type of an
LDAP message.</li>
<li><a href="ldap_msgid.htm">ldap_msgid()</a> -- Returns the ID of an LDAP
message.</li>
<li><a href="ldap_parse_result.htm">ldap_parse_result()</a> -- Extract
information from results.</li>
</ul>
<br>
<hr>
API introduced: V4R3
<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>