mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
move getpassphrase inside tool_bind; make sure password is always malloc'd and freed
This commit is contained in:
parent
3a46af398c
commit
c5cf99dd4d
@ -261,11 +261,13 @@ tool_destroy( void )
|
||||
ber_memfree( binddn );
|
||||
}
|
||||
|
||||
#if 0 /* not yet */
|
||||
if ( passwd.bv_val != NULL ) {
|
||||
ber_memfree( passwd.bv_val );
|
||||
}
|
||||
#endif
|
||||
|
||||
if ( infile != NULL ) {
|
||||
ber_memfree( infile );
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
@ -1381,6 +1383,23 @@ tool_bind( LDAP *ld )
|
||||
|
||||
assert( nsctrls < (int) (sizeof(sctrls)/sizeof(sctrls[0])) );
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
assert( passwd.bv_val == NULL && passwd.bv_len == 0 );
|
||||
|
||||
if ( pw_file ) {
|
||||
if ( lutil_get_filed_password( pw_file, &passwd ) ) {
|
||||
exit( EXIT_FAILURE );
|
||||
}
|
||||
|
||||
} else {
|
||||
char *pw = getpassphrase( _("Enter LDAP Password: ") );
|
||||
if ( pw ) {
|
||||
passwd.bv_val = ber_strdup( pw );
|
||||
passwd.bv_len = strlen( passwd.bv_val );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( authmethod == LDAP_AUTH_SASL ) {
|
||||
#ifdef HAVE_CYRUS_SASL
|
||||
void *defaults;
|
||||
|
@ -230,16 +230,6 @@ main( int argc, char **argv )
|
||||
|
||||
ld = tool_conn_setup( 0, 0 );
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) return EXIT_FAILURE;
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
|
||||
tool_bind( ld );
|
||||
|
||||
if ( 0
|
||||
|
@ -184,24 +184,10 @@ main( int argc, char **argv )
|
||||
if ( optind >= argc ) {
|
||||
fp = stdin;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ld = tool_conn_setup( 0, &private_conn_setup );
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) {
|
||||
if ( fp && fp != stdin )
|
||||
fclose( fp );
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
|
||||
tool_bind( ld );
|
||||
|
||||
tool_server_controls( ld, NULL, 0 );
|
||||
|
@ -89,16 +89,6 @@ main( int argc, char *argv[] )
|
||||
usage();
|
||||
}
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) return EXIT_FAILURE;
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
|
||||
ld = tool_conn_setup( 0, 0 );
|
||||
|
||||
tool_bind( ld );
|
||||
|
@ -262,18 +262,6 @@ main( int argc, char **argv )
|
||||
ld = tool_conn_setup( dont, 0 );
|
||||
|
||||
if ( !dont ) {
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if ( rc ) {
|
||||
retval = EXIT_FAILURE;
|
||||
goto fail;
|
||||
}
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
tool_bind( ld );
|
||||
}
|
||||
|
||||
|
@ -194,19 +194,6 @@ main(int argc, char **argv)
|
||||
|
||||
ld = tool_conn_setup( 0, 0 );
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) {
|
||||
retval = EXIT_FAILURE;
|
||||
goto fail;
|
||||
}
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
|
||||
tool_bind( ld );
|
||||
|
||||
tool_server_controls( ld, NULL, 0 );
|
||||
|
@ -245,18 +245,6 @@ main( int argc, char *argv[] )
|
||||
newpw.bv_len = strlen( newpw.bv_val );
|
||||
}
|
||||
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) {
|
||||
rc = EXIT_FAILURE;
|
||||
goto done;
|
||||
}
|
||||
|
||||
} else if ( want_bindpw ) {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
|
||||
ld = tool_conn_setup( 0, 0 );
|
||||
|
||||
tool_bind( ld );
|
||||
|
@ -909,16 +909,6 @@ main( int argc, char **argv )
|
||||
|
||||
ld = tool_conn_setup( 0, &private_conn_setup );
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) return EXIT_FAILURE;
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
|
||||
tool_bind( ld );
|
||||
|
||||
getNextPage:
|
||||
|
@ -129,16 +129,6 @@ main( int argc, char *argv[] )
|
||||
usage();
|
||||
}
|
||||
|
||||
if ( pw_file || want_bindpw ) {
|
||||
if ( pw_file ) {
|
||||
rc = lutil_get_filed_password( pw_file, &passwd );
|
||||
if( rc ) return EXIT_FAILURE;
|
||||
} else {
|
||||
passwd.bv_val = getpassphrase( _("Enter LDAP Password: ") );
|
||||
passwd.bv_len = passwd.bv_val ? strlen( passwd.bv_val ) : 0;
|
||||
}
|
||||
}
|
||||
|
||||
ld = tool_conn_setup( 0, 0 );
|
||||
|
||||
tool_bind( ld );
|
||||
|
Loading…
Reference in New Issue
Block a user