From: Kurt Zeilenga Date: Thu, 18 Dec 2003 23:40:17 +0000 (+0000) Subject: Sync with HEAD X-Git-Tag: OPENLDAP_REL_ENG_2_2_4~12 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=ab982328e05c32eccc0ce8fc3f75c471b3f71944;p=openldap Sync with HEAD --- diff --git a/clients/tools/ldapcompare.c b/clients/tools/ldapcompare.c index 896bfac5ad..b795c84918 100644 --- a/clients/tools/ldapcompare.c +++ b/clients/tools/ldapcompare.c @@ -217,7 +217,7 @@ main( int argc, char **argv ) free( bvalue.bv_val ); - ldap_unbind( ld ); + ldap_unbind_ext( ld, NULL, NULL ); return rc; } @@ -241,20 +241,14 @@ static int docompare( rc = ldap_compare_ext_s( ld, dn, attr, bvalue, sctrls, cctrls ); - if ( rc == -1 ) { - ldap_perror( ld, "ldap_result" ); - return( rc ); - } - /* if we were told to be quiet, use the return value. */ if ( !quiet ) { if ( rc == LDAP_COMPARE_TRUE ) { - rc = 0; printf(_("TRUE\n")); } else if ( rc == LDAP_COMPARE_FALSE ) { - rc = 0; printf(_("FALSE\n")); } else { + printf(_("UNDEFINED\n")); ldap_perror( ld, "ldap_compare" ); } } diff --git a/doc/man/man1/ldapcompare.1 b/doc/man/man1/ldapcompare.1 index 4a8ad9e740..2a3a60ad91 100644 --- a/doc/man/man1/ldapcompare.1 +++ b/doc/man/man1/ldapcompare.1 @@ -69,7 +69,9 @@ using specified parameters. The \fIDN\fP should be a distinguished name in the directory. \fIAttr\fP should be a known attribute. If followed by one colon, the assertion \fIvalue\fP should be provided as a string. If followed by two colons, the base64 encoding of the -value is provided. +value is provided. The result code of the compare is provided as +the exit code and, unless ran with -z, the program prints +TRUE, FALSE, or UNDEFINED on standard output. .LP .SH OPTIONS .TP @@ -172,23 +174,17 @@ specified, the program will choose the best mechanism the server knows. Issue StartTLS (Transport Layer Security) extended operation. If you use .B \-ZZ\c , the command will require the operation to be successful. -.SH EXAMPLE +.SH EXAMPLES .nf - ldapcompare "uid=babs,dc=example,dc=com" sn Jensen ldapcompare "uid=babs,dc=example,dc=com" sn:Jensen ldapcompare "uid=babs,dc=example,dc=com" sn::SmVuc2Vu .fi are all equivalent. -.SH DIAGNOSTICS -When -z is used, exit status is either 5 if the compare is false, or 6 -when the compare is true. Errors result in other non-zero values. -.br -When -z is not used, exit status is zero if no errors occur. -Errors result in a non-zero exit status and -a diagnostic message being written to standard error. -.SH BUGS -Should have a way to specify a url for options or for large binary -file compares. +.SH LIMITATIONS +Requiring the value be passed on the command line is limiting +and introduces some security concerns. The command should support +a mechanism to specify the location (file name or URL) to read +the value from. .SH "SEE ALSO" .BR ldap.conf (5), .BR ldif (5),