From: Howard Chu Date: Thu, 13 May 2004 00:46:52 +0000 (+0000) Subject: better fix for prev commit X-Git-Tag: OPENDLAP_REL_ENG_2_2_MP~384 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=c0075d57b49efe1240b43d3d8cc52a3317673780;p=openldap better fix for prev commit --- diff --git a/servers/slapd/overlays/ppolicy.c b/servers/slapd/overlays/ppolicy.c index 453e194831..f7a8a5fc64 100644 --- a/servers/slapd/overlays/ppolicy.c +++ b/servers/slapd/overlays/ppolicy.c @@ -1784,32 +1784,11 @@ ppolicy_db_init( { slap_overinst *on = (slap_overinst *) be->bd_info; - /* Has schema been initialized yet? */ - if ( !ad_pwdMinAge ) { - LDAPAttributeType *at; + /* Has User Schema been initialized yet? */ + if ( !pwd_UsSchema[0].ad ) { const char *err; int i, code; - for (i=0; pwd_OpSchema[i].def; i++) { - at = ldap_str2attributetype( pwd_OpSchema[i].def, &code, &err, - LDAP_SCHEMA_ALLOW_ALL ); - if ( !at ) { - fprintf( stderr, "AttributeType Load failed %s %s\n", - ldap_scherr2str(code), err ); - return code; - } - code = at_add( at, &err ); - if ( !code ) { - slap_str2ad( at->at_names[0], pwd_OpSchema[i].ad, &err ); - } - ldap_memfree( at ); - if ( code ) { - fprintf( stderr, "AttributeType Load failed %s %s\n", - scherr2str(code), err ); - return code; - } - } - for (i=0; pwd_UsSchema[i].def; i++) { code = slap_str2ad( pwd_UsSchema[i].def, pwd_UsSchema[i].ad, &err ); if ( code ) { @@ -1891,7 +1870,29 @@ static slap_overinst ppolicy; int ppolicy_init() { - int code; + LDAPAttributeType *at; + const char *err; + int i, code; + + for (i=0; pwd_OpSchema[i].def; i++) { + at = ldap_str2attributetype( pwd_OpSchema[i].def, &code, &err, + LDAP_SCHEMA_ALLOW_ALL ); + if ( !at ) { + fprintf( stderr, "AttributeType Load failed %s %s\n", + ldap_scherr2str(code), err ); + return code; + } + code = at_add( at, &err ); + if ( !code ) { + slap_str2ad( at->at_names[0], pwd_OpSchema[i].ad, &err ); + } + ldap_memfree( at ); + if ( code ) { + fprintf( stderr, "AttributeType Load failed %s %s\n", + scherr2str(code), err ); + return code; + } + } code = register_supported_control( LDAP_CONTROL_PASSWORDPOLICYREQUEST, SLAP_CTRL_ADD|SLAP_CTRL_BIND|SLAP_CTRL_MODIFY, extops,