X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=clients%2Ftools%2Fldapdelete.c;h=2e7d42f82b6ddf4709942b6229fec25b78e6db2a;hb=9bc2cd3987b0bf5b86c2b9be417d7119f2e9d623;hp=42730f14023a824ab97c5e8c196971af466fe9a7;hpb=4a223061edb8a3fdb0bb1f5a721a42248ef5a486;p=openldap diff --git a/clients/tools/ldapdelete.c b/clients/tools/ldapdelete.c index 42730f1402..2e7d42f82b 100644 --- a/clients/tools/ldapdelete.c +++ b/clients/tools/ldapdelete.c @@ -2,7 +2,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 1998-2005 The OpenLDAP Foundation. + * Copyright 1998-2006 The OpenLDAP Foundation. * Portions Copyright 1998-2003 Kurt D. Zeilenga. * All rights reserved. * @@ -39,6 +39,7 @@ #include #include #include +#include #include #include "lutil.h" @@ -139,7 +140,7 @@ main( int argc, char **argv ) fp = NULL; - tool_init(); + tool_init( TOOL_DELETE ); prog = lutil_progname( "ldapdelete", argc, argv ); tool_args( argc, argv ); @@ -169,13 +170,11 @@ main( int argc, char **argv ) tool_bind( ld ); - if ( assertion || authzid || manageDSAit || noop ) { - tool_server_controls( ld, NULL, 0 ); - } + tool_server_controls( ld, NULL, 0 ); retval = rc = 0; - if ( fp == NULL ) { + if ( fp == NULL ) { for ( ; optind < argc; ++optind ) { rc = dodelete( ld, argv[ optind ] ); @@ -214,10 +213,10 @@ static int dodelete( if ( verbose ) { printf( _("%sdeleting entry \"%s\"\n"), - (not ? "!" : ""), dn ); + (dont ? "!" : ""), dn ); } - if ( not ) { + if ( dont ) { return LDAP_SUCCESS; } @@ -234,7 +233,7 @@ static int dodelete( } for ( ; ; ) { - struct timeval tv; + struct timeval tv; if ( tool_check_abandon( ld, id ) ) { return LDAP_CANCELLED; @@ -245,7 +244,7 @@ static int dodelete( rc = ldap_result( ld, LDAP_RES_ANY, LDAP_MSG_ALL, &tv, &res ); if ( rc < 0 ) { - ldap_perror( ld, "ldapdelete: ldap_result" ); + tool_perror( "ldap_result", rc, NULL, NULL, NULL, NULL ); return rc; } @@ -262,8 +261,10 @@ static int dodelete( return rc; } - if( verbose || code != LDAP_SUCCESS || - (matcheddn && *matcheddn) || (text && *text) || (refs && *refs) ) + if( code != LDAP_SUCCESS ) { + tool_perror( "ldap_delete", code, NULL, matcheddn, text, refs ); + } else if ( verbose && + ((matcheddn && *matcheddn) || (text && *text) || (refs && *refs) )) { printf( _("Delete Result: %s (%d)\n"), ldap_err2string( code ), code ); @@ -315,7 +316,7 @@ static int deletechildren( rc = ldap_search_ext_s( ld, dn, LDAP_SCOPE_ONELEVEL, NULL, attrs, 1, NULL, NULL, NULL, -1, &res ); if ( rc != LDAP_SUCCESS ) { - ldap_perror( ld, "ldap_search" ); + tool_perror( "ldap_search", rc, NULL, NULL, NULL, NULL ); return( rc ); } @@ -330,15 +331,15 @@ static int deletechildren( char *dn = ldap_get_dn( ld, e ); if( dn == NULL ) { - ldap_perror( ld, "ldap_prune" ); ldap_get_option( ld, LDAP_OPT_ERROR_NUMBER, &rc ); + tool_perror( "ldap_prune", rc, NULL, NULL, NULL, NULL ); ber_memfree( dn ); return rc; } rc = deletechildren( ld, dn ); if ( rc == -1 ) { - ldap_perror( ld, "ldap_prune" ); + tool_perror( "ldap_prune", rc, NULL, NULL, NULL, NULL ); ber_memfree( dn ); return rc; } @@ -347,9 +348,9 @@ static int deletechildren( printf( _("\tremoving %s\n"), dn ); } - rc = ldap_delete_s( ld, dn ); + rc = ldap_delete_ext_s( ld, dn, NULL, NULL ); if ( rc == -1 ) { - ldap_perror( ld, "ldap_delete" ); + tool_perror( "ldap_delete", rc, NULL, NULL, NULL, NULL ); ber_memfree( dn ); return rc; @@ -389,7 +390,7 @@ static int deletechildren( rc = ldap_search_ext_s( ld, dn, LDAP_SCOPE_ONELEVEL, NULL, attrs, 1, ctrls, NULL, NULL, -1, &res_se ); if ( rc != LDAP_SUCCESS ) { - ldap_perror( ld, "ldap_search" ); + tool_perror( "ldap_search", rc, NULL, NULL, NULL, NULL ); return( rc ); } ber_free( ber, 1 ); @@ -405,8 +406,8 @@ static int deletechildren( char *dn = ldap_get_dn( ld, e ); if( dn == NULL ) { - ldap_perror( ld, "ldap_prune" ); ldap_get_option( ld, LDAP_OPT_ERROR_NUMBER, &rc ); + tool_perror( "ldap_prune", rc, NULL, NULL, NULL, NULL ); ber_memfree( dn ); return rc; } @@ -415,9 +416,9 @@ static int deletechildren( printf( _("\tremoving %s\n"), dn ); } - rc = ldap_delete_s( ld, dn ); + rc = ldap_delete_ext_s( ld, dn, NULL, NULL ); if ( rc == -1 ) { - ldap_perror( ld, "ldap_delete" ); + tool_perror( "ldap_delete", rc, NULL, NULL, NULL, NULL ); ber_memfree( dn ); return rc;