mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-06 10:46:21 +08:00
Preserve old slap_passwd_hash() signature, add slap_passwd_hash_type()
This commit is contained in:
parent
0c9b308781
commit
db52f51943
@ -168,7 +168,7 @@ int passwd_extop(
|
||||
}
|
||||
ml->sml_values = ch_malloc( (nhash+1)*sizeof(struct berval) );
|
||||
for ( i=0; hashes[i]; i++ ) {
|
||||
slap_passwd_hash( hashes[i], &qpw->rs_new, &hash, &rs->sr_text );
|
||||
slap_passwd_hash_type( &qpw->rs_new, &hash, hashes[i], &rs->sr_text );
|
||||
if ( hash.bv_len == 0 ) {
|
||||
if ( !rs->sr_text ) {
|
||||
rs->sr_text = "password hash failed";
|
||||
@ -187,7 +187,7 @@ int passwd_extop(
|
||||
ml = ch_malloc( sizeof(Modifications) );
|
||||
ml->sml_values = ch_malloc( (nhash+1)*sizeof(struct berval) );
|
||||
for ( i=0; hashes[i]; i++ ) {
|
||||
slap_passwd_hash( hashes[i], &qpw->rs_old, &hash, &rs->sr_text );
|
||||
slap_passwd_hash_type( &qpw->rs_old, &hash, hashes[i], &rs->sr_text );
|
||||
if ( hash.bv_len == 0 ) {
|
||||
if ( !rs->sr_text ) {
|
||||
rs->sr_text = "password hash failed";
|
||||
@ -473,23 +473,16 @@ slap_passwd_generate( struct berval *pass )
|
||||
}
|
||||
|
||||
void
|
||||
slap_passwd_hash(
|
||||
char *hash,
|
||||
slap_passwd_hash_type(
|
||||
struct berval * cred,
|
||||
struct berval * new,
|
||||
char *hash,
|
||||
const char **text )
|
||||
{
|
||||
new->bv_len = 0;
|
||||
new->bv_val = NULL;
|
||||
|
||||
if ( !hash ) {
|
||||
if ( default_passwd_hash ) {
|
||||
hash = default_passwd_hash[0];
|
||||
}
|
||||
if ( !hash ) {
|
||||
hash = (char *)defhash[0];
|
||||
}
|
||||
}
|
||||
assert( hash );
|
||||
|
||||
#if defined( SLAPD_CRYPT ) || defined( SLAPD_SPASSWD )
|
||||
ldap_pvt_thread_mutex_lock( &passwd_mutex );
|
||||
@ -502,3 +495,19 @@ slap_passwd_hash(
|
||||
#endif
|
||||
|
||||
}
|
||||
void
|
||||
slap_passwd_hash(
|
||||
struct berval * cred,
|
||||
struct berval * new,
|
||||
const char **text )
|
||||
{
|
||||
char *hash;
|
||||
if ( default_passwd_hash ) {
|
||||
hash = default_passwd_hash[0];
|
||||
}
|
||||
if ( !hash ) {
|
||||
hash = (char *)defhash[0];
|
||||
}
|
||||
|
||||
slap_passwd_hash_type( cred, new, hash, text );
|
||||
}
|
||||
|
@ -864,11 +864,16 @@ LDAP_SLAPD_F (int) slap_passwd_check(
|
||||
LDAP_SLAPD_F (void) slap_passwd_generate( struct berval * );
|
||||
|
||||
LDAP_SLAPD_F (void) slap_passwd_hash(
|
||||
char *type,
|
||||
struct berval *cred,
|
||||
struct berval *hash,
|
||||
const char **text );
|
||||
|
||||
LDAP_SLAPD_F (void) slap_passwd_hash_type(
|
||||
struct berval *cred,
|
||||
struct berval *hash,
|
||||
char *htype,
|
||||
const char **text );
|
||||
|
||||
LDAP_SLAPD_F (struct berval *) slap_passwd_return(
|
||||
struct berval *cred );
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user