-FF means: log just once

This commit is contained in:
Pierangelo Masarati 2006-01-21 16:27:15 +00:00
parent 44abcdfa2f
commit cf94f444fc
2 changed files with 40 additions and 7 deletions

View file

@ -117,7 +117,7 @@ main( int argc, char **argv )
break; break;
case 'F': case 'F':
force = 1; force++;
break; break;
default: default:
@ -145,7 +145,7 @@ static int
do_bind( char *uri, char *dn, struct berval *pass, int maxloop, int force ) do_bind( char *uri, char *dn, struct berval *pass, int maxloop, int force )
{ {
LDAP *ld = NULL; LDAP *ld = NULL;
int i, rc = -1; int i, first = 1, rc = -1;
pid_t pid = getpid(); pid_t pid = getpid();
if ( maxloop > 1 ) if ( maxloop > 1 )
@ -167,7 +167,21 @@ do_bind( char *uri, char *dn, struct berval *pass, int maxloop, int force )
} }
rc = ldap_sasl_bind_s( ld, dn, LDAP_SASL_SIMPLE, pass, NULL, NULL, NULL ); rc = ldap_sasl_bind_s( ld, dn, LDAP_SASL_SIMPLE, pass, NULL, NULL, NULL );
if ( rc != LDAP_SUCCESS ) { switch ( rc ) {
case LDAP_SUCCESS:
break;
case LDAP_INVALID_CREDENTIALS:
/* don't log: it's intended */
if ( force >= 2 ) {
if ( !first ) {
break;
}
first = 0;
}
/* fallthru */
default:
tester_ldap_error( ld, "ldap_sasl_bind_s" ); tester_ldap_error( ld, "ldap_sasl_bind_s" );
} }
ldap_unbind_ext( ld, NULL, NULL ); ldap_unbind_ext( ld, NULL, NULL );

View file

@ -154,6 +154,8 @@ main( int argc, char **argv )
int banum; int banum;
char bcmd[MAXPATHLEN]; char bcmd[MAXPATHLEN];
char *friendlyOpt = NULL;
tester_init( "slapd-tester" ); tester_init( "slapd-tester" );
while ( (i = getopt( argc, argv, "D:d:FH:h:j:l:P:p:r:t:w:" )) != EOF ) { while ( (i = getopt( argc, argv, "D:d:FH:h:j:l:P:p:r:t:w:" )) != EOF ) {
@ -282,6 +284,23 @@ main( int argc, char **argv )
bnum = get_search_filters( bfile, bcreds, breqs ); bnum = get_search_filters( bfile, bcreds, breqs );
} }
/* setup friendly option */
switch ( friendly ) {
case 0:
break;
case 1:
friendlyOpt = "-F";
break;
default:
/* NOTE: right now we don't need it more than twice */
case 2:
friendlyOpt = "-FF";
break;
}
/* /*
* generate the search clients * generate the search clients
*/ */
@ -370,7 +389,7 @@ main( int argc, char **argv )
margs[manum++] = "-t"; margs[manum++] = "-t";
margs[manum++] = delay; margs[manum++] = delay;
if ( friendly ) { if ( friendly ) {
margs[manum++] = "-F"; margs[manum++] = friendlyOpt;
} }
margs[manum++] = "-e"; margs[manum++] = "-e";
margs[manum++] = NULL; /* will hold the modrdn entry */ margs[manum++] = NULL; /* will hold the modrdn entry */
@ -404,7 +423,7 @@ main( int argc, char **argv )
modargs[modanum++] = "-t"; modargs[modanum++] = "-t";
modargs[modanum++] = delay; modargs[modanum++] = delay;
if ( friendly ) { if ( friendly ) {
modargs[modanum++] = "-F"; modargs[modanum++] = friendlyOpt;
} }
modargs[modanum++] = "-e"; modargs[modanum++] = "-e";
modargs[modanum++] = NULL; /* will hold the modify entry */ modargs[modanum++] = NULL; /* will hold the modify entry */
@ -440,7 +459,7 @@ main( int argc, char **argv )
aargs[aanum++] = "-t"; aargs[aanum++] = "-t";
aargs[aanum++] = delay; aargs[aanum++] = delay;
if ( friendly ) { if ( friendly ) {
aargs[aanum++] = "-F"; aargs[aanum++] = friendlyOpt;
} }
aargs[aanum++] = "-f"; aargs[aanum++] = "-f";
aargs[aanum++] = NULL; /* will hold the add data file */ aargs[aanum++] = NULL; /* will hold the add data file */
@ -472,7 +491,7 @@ main( int argc, char **argv )
bargs[banum++] = delay; bargs[banum++] = delay;
#endif #endif
if ( friendly ) { if ( friendly ) {
bargs[banum++] = "-F"; bargs[banum++] = friendlyOpt;
} }
bargs[banum++] = "-D"; bargs[banum++] = "-D";
bargs[banum++] = NULL; bargs[banum++] = NULL;