]> git.sur5r.net Git - openldap/commitdiff
ITS#8108 silence rootdn check on hidden backends
authorHoward Chu <hyc@openldap.org>
Thu, 23 Apr 2015 04:58:50 +0000 (05:58 +0100)
committerQuanah Gibson-Mount <quanah@openldap.org>
Thu, 23 Apr 2015 17:51:19 +0000 (12:51 -0500)
select_backend() skips hidden backends so it fails to match the
rootdn of a database that has been hidden. rootpw tries to see
if the rootdn matches the current backend but the check fails
when hidden. Ignore this check on hidden backends since one
cannot Bind to a hidden backend anyway.

servers/slapd/bconfig.c

index d726a56427c723950b7254a0c699a62592e4249a..6268a99b303b3d052744aa7df0908522065fe456 100644 (file)
@@ -3285,7 +3285,7 @@ config_rootpw(ConfigArgs *c) {
        }
 
        tbe = select_backend(&c->be->be_rootndn, 0);
-       if(tbe != c->be) {
+       if(tbe != c->be && !SLAP_DBHIDDEN( c->be )) {
                snprintf( c->cr_msg, sizeof( c->cr_msg ), "<%s> can only be set when rootdn is under suffix",
                        c->argv[0] );
                Debug(LDAP_DEBUG_ANY, "%s: %s\n",