smbdotconf: mark "ldap admin dn" with constant="1"
authorRalph Boehme <slow@samba.org>
Mon, 4 Nov 2019 16:54:23 +0000 (17:54 +0100)
committerStefan Metzmacher <metze@samba.org>
Wed, 27 Nov 2019 10:25:36 +0000 (10:25 +0000)
All the other LDAP related options like "ldap user suffix" don't support
variable substitution, so I guess it's safe to remove support for it from this
one as well.

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
docs-xml/smbdotconf/ldap/ldapadmindn.xml
source3/passdb/secrets.c
source3/utils/smbpasswd.c

index 1f3d20f003a4f3889c02d1261f0488258c43ab96..5f5476b0f4c091ff2cf8e558a1c5252fe17e84ef 100644 (file)
@@ -1,6 +1,7 @@
 <samba:parameter name="ldap admin dn"
                  context="G"
                  type="string"
+                 constant="1"
                  xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
 <description>
 
index ce215b1f2b2885c087c2b48e54f8eb3ce4034451..2b2206070e25b6f8ba3f10b1312be702e2bd4ba5 100644 (file)
@@ -324,7 +324,7 @@ bool fetch_ldap_pw(char **dn, char** pw)
        char *key = NULL;
        size_t size = 0;
 
-       *dn = smb_xstrdup(lp_ldap_admin_dn(talloc_tos()));
+       *dn = smb_xstrdup(lp_ldap_admin_dn());
 
        if (asprintf(&key, "%s/%s", SECRETS_LDAP_BIND_PW, *dn) < 0) {
                SAFE_FREE(*dn);
index a6509abe5cbb2b328231bbd21dae1239e892ddfd..858689b30128ad8ac65819ac6c6d0f0d666ebd26 100644 (file)
@@ -295,7 +295,7 @@ static bool store_ldap_admin_pw (char* pw)
        if (!secrets_init())
                return False;
 
-       return secrets_store_ldap_pw(lp_ldap_admin_dn(talloc_tos()), pw);
+       return secrets_store_ldap_pw(lp_ldap_admin_dn(), pw);
 }
 
 
@@ -310,7 +310,7 @@ static int process_root(int local_flags)
        char *old_passwd = NULL;
 
        if (local_flags & LOCAL_SET_LDAP_ADMIN_PW) {
-               char *ldap_admin_dn = lp_ldap_admin_dn(talloc_tos());
+               const char *ldap_admin_dn = lp_ldap_admin_dn();
                if ( ! *ldap_admin_dn ) {
                        DEBUG(0,("ERROR: 'ldap admin dn' not defined! Please check your smb.conf\n"));
                        goto done;