X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=doc%2Fman%2Fman3%2Fldap_result.3;h=607eed15fb12021571f0c6b33043ac21c0359c9a;hb=2be146e20ffdabe32514445b6034e40cb7df77be;hp=4a3039b8960d7eb203483edc53728570fe4f66f9;hpb=2a869f5a99f537b246ba8640502e2a86117cb6e8;p=openldap diff --git a/doc/man/man3/ldap_result.3 b/doc/man/man3/ldap_result.3 index 4a3039b896..607eed15fb 100644 --- a/doc/man/man3/ldap_result.3 +++ b/doc/man/man3/ldap_result.3 @@ -1,24 +1,26 @@ -.TH LDAP_RESULT 3 "22 September 1998" "OpenLDAP LDVERSION" +.TH LDAP_RESULT 3 "RELEASEDATE" "OpenLDAP LDVERSION" +.\" $OpenLDAP$ +.\" Copyright 1998-2006 The OpenLDAP Foundation All Rights Reserved. +.\" Copying restrictions apply. See COPYRIGHT/LICENSE. .SH NAME ldap_result \- Wait for the result of an LDAP operation +.SH LIBRARY +OpenLDAP LDAP (libldap, -lldap) .SH SYNOPSIS .nf .ft B -#include #include .LP .ft B -int ldap_result(ld, msgid, all, timeout, result) +int ldap_result( LDAP *ld, int msgid, int all, + struct timeval *timeout, LDAPMessage **result ); + +int ldap_msgfree( LDAPMessage *msg ); + +int ldap_msgtype( LDAPMessage *msg ); + +int ldap_msgid( LDAPMessage *msg ); .ft -LDAP *ld; -int msgid, all; -struct timeval *timeout; -LDAPMessage **result; -.LP -.ft B -int ldap_msgfree(msg) -.ft -LDAPMessage *msg; .SH DESCRIPTION The .B ldap_result() @@ -49,63 +51,83 @@ for further details. .LP If the result of a specific operation is required, \fImsgid\fP should be set to the invocation identifier returned when the operation was -initiated, otherwise LDAP_RES_ANY should be supplied. The \fIall\fP -parameter only has meaning for search responses and is used to select -whether a single entry of the search response should be returned, or -all results of the search should be returned. +initiated, otherwise LDAP_RES_ANY or LDAP_RES_UNSOLICITED should be +supplied to wait for any or unsolicited response. +.LP +The \fIall\fP parameter, if non-zero, causes +.B ldap_result() +to return all responses with msgid, otherwise only the +next response is returned. This is commonly used to obtain all +the responses of a search operation. .LP A search response is made up of zero or -more search entries followed by a search result. If \fIall\fP is set -to 0, search entries will be returned one at a time as they come in, -via separate calls to +more search entries, zero or more search references, and zero or +more extended partial responses followed by a search result. If +\fIall\fP is set to 0, search entries will be returned one at a +time as they come in, via separate calls to .BR ldap_result() . If it's set to 1, the search -response will only be returned in its entirety, i.e., after all entries -and the final search result have been received. +response will only be returned in its entirety, i.e., after all entries, +all references, all extended partial responses, and the final search +result have been received. .LP Upon success, the type of the result received is returned and the -\fIresult\fP parameter will contain the result of the operation. This +\fIresult\fP parameter will contain the result of the operation; +otherwise, the \fIresult\fP parameter is undefined. This result should be passed to the LDAP parsing routines, -.BR ldap_first_entry (3) +.BR ldap_first_message (3) and friends, for interpretation. .LP The possible result types returned are: .LP .nf - #define LDAP_RES_BIND 0x61L - #define LDAP_RES_SEARCH_ENTRY 0x64L - #define LDAP_RES_SEARCH_RESULT 0x65L - #define LDAP_RES_MODIFY 0x67L - #define LDAP_RES_ADD 0x69L - #define LDAP_RES_DELETE 0x6bL - #define LDAP_RES_MODRDN 0x6dL - #define LDAP_RES_COMPARE 0x6fL + LDAP_RES_BIND (0x61) + LDAP_RES_SEARCH_ENTRY (0x64) + LDAP_RES_SEARCH_REFERENCE (0x73) + LDAP_RES_SEARCH_RESULT (0x65) + LDAP_RES_MODIFY (0x67) + LDAP_RES_ADD (0x69) + LDAP_RES_DELETE (0x6b) + LDAP_RES_MODDN (0x6d) + LDAP_RES_COMPARE (0x6f) + LDAP_RES_EXTENDED (0x78) + LDAP_RES_EXTENDED_PARTIAL (0x79) .fi .LP The .B ldap_msgfree() routine is used to free the memory allocated for -a result by +result(s) by .B ldap_result() or .BR ldap_search_s (3) -and friends. It takes -a pointer to the result to be freed and returns the type of the -message it freed. +and friends. +It takes a pointer to the result or result chain to be freed and returns +the type of the last message in the chain. +If the parameter is NULL, the function does nothing and returns zero. +.LP +The +.B ldap_msgtype() +routine returns the type of a message. +.LP +The +.B ldap_msgid() +routine returns the message id of a message. .SH ERRORS .B ldap_result() returns -1 if something bad happens, and zero if the timeout specified was exceeded. -.SH NOTES -This routine mallocs memory for results that it receives. The memory -can be freed by calling -.BR ldap_msgfree . +.B ldap_msgtype() +and +.B ldap_msgid() +return -1 on error. .SH SEE ALSO .BR ldap (3), .BR ldap_search (3), +.BR ldap_first_message (3), .BR select (2) .SH ACKNOWLEDGEMENTS -.B OpenLDAP +.B OpenLDAP is developed and maintained by The OpenLDAP Project (http://www.openldap.org/). -.B OpenLDAP +.B OpenLDAP is derived from University of Michigan LDAP 3.3 Release.