]> git.sur5r.net Git - openldap/commitdiff
Improved but still broken client tools.
authorKurt Zeilenga <kurt@openldap.org>
Tue, 4 Jul 2000 21:49:00 +0000 (21:49 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Tue, 4 Jul 2000 21:49:00 +0000 (21:49 +0000)
clients/tools/ldapdelete.c
clients/tools/ldapmodrdn.c
clients/tools/ldappasswd.c
clients/tools/ldapsearch.c
include/ldap.h
libraries/libldap/error.c
libraries/libldap/result.c
tests/scripts/test005-modrdn

index 14fb9459698a5237f986dbadf52d7964318951da..4b068df7f516d801f6b0472f3894d6d5541cde84 100644 (file)
@@ -456,25 +456,30 @@ static int dodelete(
 
        rc = ldap_delete_ext( ld, dn, NULL, NULL, &id );
        if ( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_delete_ext" );
+               fprintf( stderr, "ldapdelete: ldap_delete_ext: %s (%d)\n",
+                       ldap_err2string( rc ), rc );
                return rc;
        }
 
-       rc = ldap_result( ld, LDAP_RES_ANY, 0, NULL, &res );
+       rc = ldap_result( ld, LDAP_RES_ANY, LDAP_MSG_ALL, NULL, &res );
        if ( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_result" );
+               fprintf( stderr, "ldapdelete: ldap_result: %s (%d)\n",
+                       ldap_err2string( rc ), rc );
                return rc;
        }
 
        rc = ldap_parse_result( ld, res, &code, &matcheddn, &text, &refs, NULL, 1 );
 
        if( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_parse_result" );
+               fprintf( stderr, "ldapdelete: ldap_parse_result: %s (%d)\n",
+                       ldap_err2string( rc ), rc );
                return rc;
        }
 
-       if( verbose || code != LDAP_SUCCESS || matcheddn || text || refs ) {
-               printf( "Result: %s (%d)\n", ldap_err2string( code ), code );
+       if( verbose || code != LDAP_SUCCESS ||
+               (matcheddn && *matcheddn) || (text && *text) || (refs && *refs) )
+       {
+               printf( "Delete Result: %s (%d)\n", ldap_err2string( code ), code );
 
                if( text && *text ) {
                        printf( "Additional info: %s\n", text );
@@ -494,7 +499,7 @@ static int dodelete(
 
        ber_memfree( text );
        ber_memfree( matcheddn );
-       ber_memvfree( refs );
+       ber_memvfree( (void **) refs );
 
        return code;
 }
index b29e17cd0c4f763e11bc2769274f8320b450933e..9905d0f2c6c8f5b9e7fc7ebd561dc32b5f36f2f5 100644 (file)
@@ -509,25 +509,31 @@ static int domodrdn(
                NULL, NULL, &id );
 
        if ( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_rename" );
+               fprintf( stderr, "ldapmodrdn: ldap_rename: %s (%d)\n",
+                       ldap_err2string( rc ), rc );
                return rc;
        }
 
-       rc = ldap_result( ld, LDAP_RES_ANY, 0, NULL, &res );
+       rc = ldap_result( ld, LDAP_RES_ANY, LDAP_MSG_ALL, NULL, &res );
        if ( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_result" );
+               fprintf( stderr, "ldapmodrdn: ldap_result: %s (%d)\n",
+                       ldap_err2string( rc ), rc );
                return rc;
        }
 
        rc = ldap_parse_result( ld, res, &code, &matcheddn, &text, &refs, NULL, 1 );
 
        if( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_parse_result" );
+               fprintf( stderr, "ldapmodrdn: ldap_parse_result: %s (%d)\n",
+                       ldap_err2string( rc ), rc );
                return rc;
        }
 
-       if( verbose || code != LDAP_SUCCESS || matcheddn || text || refs ) {
-               printf( "Result: %s (%d)\n", ldap_err2string( code ), code );
+       if( verbose || code != LDAP_SUCCESS ||
+               (matcheddn && *matcheddn) || (text && *text) || (refs && *refs) )
+       {
+               printf( "Rename Result: %s (%d)\n",
+                       ldap_err2string( code ), code );
 
                if( text && *text ) {
                        printf( "Additional info: %s\n", text );
@@ -547,7 +553,7 @@ static int domodrdn(
 
        ber_memfree( text );
        ber_memfree( matcheddn );
-       ber_memvfree( refs );
+       ber_memvfree( (void **) refs );
 
        return code;
 }
index 96e898afd2a33c3ad99a51cc1dfbbe7b10fd29a7..c61c6e5eec575c51e9fe12c1a1d03c96a2cf9fee 100644 (file)
@@ -449,7 +449,7 @@ main( int argc, char *argv[] )
                return EXIT_FAILURE;
        }
 
-       rc = ldap_result( ld, LDAP_RES_ANY, 0, NULL, &res );
+       rc = ldap_result( ld, LDAP_RES_ANY, LDAP_MSG_ALL, NULL, &res );
        if ( rc != LDAP_SUCCESS ) {
                ldap_perror( ld, "ldap_result" );
                return rc;
index 0bd21c266fd1700d45b08eca72abaf28a8589ff7..0b8ca33c31b2bf02c06620970912aa79d8a24251 100644 (file)
@@ -713,15 +713,18 @@ static int dosearch(
                sctrls, cctrls, timelimit, sizelimit, &msgid );
 
        if( rc != LDAP_SUCCESS ) {
-               ldap_perror( ld, "ldap_search" );
+               fprintf( stderr, "ldapsearch: ldap_search_ext: %s (%d)",
+                       ldap_err2string( rc ), rc );
                return( rc );
        }
 
        nresponses = nentries = nreferences = nextended = npartial = 0;
 
        res = NULL;
+
        while ((rc = ldap_result( ld, LDAP_RES_ANY,
-               sortattr ? 1 : 0, NULL, &res )) > 0 )
+               sortattr ? LDAP_MSG_ALL : LDAP_MSG_ONE,
+               NULL, &res )) > 0 )
        {
                if( sortattr ) {
                        (void) ldap_sort_entries( ld, &res,
index ccb0f4aa285d27e13181b9c1f51ecb9502b55a0a..a46f0858ba8f89f6afb4310d2b68552d42cbeb39 100644 (file)
@@ -266,8 +266,8 @@ typedef struct ldapcontrol {
 #define LDAP_RES_EXTENDED              ((ber_tag_t) 0x78U)     /* V3: application + constructed */
 #define LDAP_RES_EXTENDED_PARTIAL      ((ber_tag_t) 0x79U)     /* V3+: application + constructed */
 
-#define LDAP_RES_ANY                   ((ber_tag_t)(-1))
-#define LDAP_RES_UNSOLICITED   ((ber_tag_t)(0))
+#define LDAP_RES_ANY                   (-1)
+#define LDAP_RES_UNSOLICITED   (0)
 
 
 /* sasl methods */
index 8594c849afe69e5644254432f95d0c57703a4e80..90fcac082fdf876cb01a3c70b07fe833bede303c 100644 (file)
@@ -211,7 +211,6 @@ ldap_parse_result(
        LDAPMessage     *lm;
        ber_int_t errcode = LDAP_SUCCESS;
 
-       int rc;
        ber_tag_t tag;
        BerElement      *ber;
 
@@ -307,7 +306,7 @@ ldap_parse_result(
                }
 
                if( tag != LBER_ERROR ) {
-                       rc = ldap_int_get_controls( ber, serverctrls );
+                       int rc = ldap_int_get_controls( ber, serverctrls );
 
                        if( rc != LDAP_SUCCESS ) {
                                tag = LBER_ERROR;
index 3d326ca7c5c4d040309ee50ee96fedf774437bd3..5ef39bb8cd2cc820f569fc99e3c265726d552111 100644 (file)
@@ -67,12 +67,14 @@ static void merge_error_info LDAP_P(( LDAP *ld, LDAPRequest *parentr, LDAPReques
 
 /*
  * ldap_result - wait for an ldap result response to a message from the
- * ldap server.  If msgid is -1, any message will be accepted, otherwise
- * ldap_result will wait for a response with msgid.  If all is 0 the
- * first message with id msgid will be accepted, otherwise, ldap_result
- * will wait for all responses with id msgid and then return a pointer to
- * the entire list of messages.  This is only useful for search responses,
- * which can be of two message types (zero or more entries, followed by an
+ * ldap server.  If msgid is LDAP_RES_ANY (-1), any message will be
+ * accepted.  If msgid is LDAP_RES_UNSOLICITED (0), any unsolicited
+ * message is accepted.  Otherwise ldap_result will wait for a response
+ * with msgid.  If all is LDAP_MSG_ONE (0) the first message with id
+ * msgid will be accepted, otherwise, ldap_result will wait for all
+ * responses with id msgid and then return a pointer to the entire list
+ * of messages.  This is only useful for search responses, which can be
+ * of two message types (zero or more entries, followed by an
  * ldap result).  The type of the first message received is returned.
  * When waiting, any messages that have been abandoned are discarded.
  *
index ca5b98bea14b499620a5119bb6cc587e0278788e..f72ccfdf6adec3ce34da6f0c62eba7f07d3df9ac 100755 (executable)
@@ -21,7 +21,7 @@ echo "Running slapadd to build slapd database..."
 $LDIF2LDBM -f $CONF -l $LDIF
 RC=$?
 if test $RC != 0 ; then
-       echo "slapadd failed!"
+       echo "slapadd failed ($RC)!"
        exit $RC
 fi
 
@@ -42,7 +42,7 @@ for i in 0 1 2 3 4 5; do
 done
 
 if test $RC != 0 ; then
-       echo "ldapsearch failed!"
+       echo "ldapsearch failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi
@@ -50,23 +50,23 @@ fi
 # -r used to do remove of old rdn
 
 echo "Testing modrdn(deleteoldrdn=0)..."
-$LDAPMODRDN -v -D "$MANAGERDN" -h localhost -p $PORT -w $PASSWD > \
+$LDAPMODRDN -D "$MANAGERDN" -h localhost -p $PORT -w $PASSWD > \
        $TESTOUT 2>&1 'cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US' 'cn=James A Jones III'
 
 RC=$?
 if test $RC != 0 ; then
-       echo "ldapmodrdn failed!"
+       echo "ldapmodrdn failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi
 
 echo "Testing modrdn(deleteoldrdn=1)..."
-$LDAPMODRDN -v -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD >> \
+$LDAPMODRDN -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD >> \
        $TESTOUT 2>&1 'cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US' 'cn=James A Jones II'
 
 RC=$?
 if test $RC != 0 ; then
-       echo "ldapmodrdn failed!"
+       echo "ldapmodrdn failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi
@@ -78,7 +78,7 @@ $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
            'cn=James A Jones III' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
-       echo "ldapsearch failed!"
+       echo "ldapsearch failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi
@@ -105,7 +105,7 @@ $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
            'cn=James A Jones II' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
-       echo "ldapsearch failed!"
+       echo "ldapsearch failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi
@@ -135,7 +135,7 @@ $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
 RC=$?
 if test $RC != 0 ; then
        kill -HUP $PID
-       echo "ldapsearch failed!"
+       echo "ldapsearch failed ($RC)!"
        exit $RC
 fi
 $CMP $SEARCHOUT /dev/null
@@ -151,7 +151,7 @@ $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
 RC=$?
 if test $RC != 0 ; then
        kill -HUP $PID
-       echo "ldapsearch failed!"
+       echo "ldapsearch failed ($RC)!"
        exit $RC
 fi
 
@@ -172,12 +172,12 @@ fi
 
 
 echo "Testing modrdn(deleteoldrdn=1), modrdn with new rdn already an att val..."
-$LDAPMODRDN -v -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD > \
+$LDAPMODRDN -D "$MANAGERDN" -r -h localhost -p $PORT -w $PASSWD > \
        /dev/null 2>&1 'cn=James A Jones III, ou=Alumni Association, ou=People, o=University of Michigan, c=US' 'cn=James A Jones 1'
 
 RC=$?
 if test $RC != 0 ; then
-       echo "ldapmodrdn failed!"
+       echo "ldapmodrdn failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi
@@ -190,7 +190,7 @@ $LDAPSEARCH -S "" -b "$BASEDN" -h localhost -p $PORT \
            'cn=James A Jones 1' > $SEARCHOUT 2>&1
 RC=$?
 if test $RC != 0 ; then
-       echo "ldapsearch failed!"
+       echo "ldapsearch failed ($RC)!"
        kill -HUP $PID
        exit $RC
 fi