diff options
author | Oliver Liebel <oliver@itc.li> | 2009-02-25 10:27:19 +1100 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2009-02-25 10:39:35 +1100 |
commit | 503d15e8df9075ea9cf8b2d260487e68fc68f559 (patch) | |
tree | 579eb2e97d11fdf460ff1100c06f7536ea41c306 /source4/scripting/python | |
parent | b3d53e2ce6da661c3b41f03fdb0ecbe44579b593 (diff) | |
download | samba-503d15e8df9075ea9cf8b2d260487e68fc68f559.tar.gz samba-503d15e8df9075ea9cf8b2d260487e68fc68f559.tar.bz2 samba-503d15e8df9075ea9cf8b2d260487e68fc68f559.zip |
Updates to the recent cn=config support for the OpenLDAP backend
- removed workaround for olcSyncprovConfig - creation (works perfect now
with 2.4.15, release was today)
- added 1 message-helpline, which is displayed when running
provision-backend with olc and/or mmr setup
- corrected 1 wrong slapcommand-helpline
- slapd.conf is removed now in case of olc-setup
- added 1 copyright-line to provision.py and provision-backend
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/scripting/python')
-rw-r--r-- | source4/scripting/python/samba/provision.py | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/source4/scripting/python/samba/provision.py b/source4/scripting/python/samba/provision.py index 8442c24d71..c817bffbdd 100644 --- a/source4/scripting/python/samba/provision.py +++ b/source4/scripting/python/samba/provision.py @@ -4,6 +4,7 @@ # Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2007-2008 # Copyright (C) Andrew Bartlett <abartlet@samba.org> 2008 +# Copyright (C) Oliver Liebel <oliver@itc.li> 2008-2009 # # Based on the original in EJS: # Copyright (C) Andrew Tridgell <tridge@samba.org> 2005 @@ -100,8 +101,6 @@ class ProvisionPaths(object): self.olcdir = None self.olslaptest = None self.olcseedldif = None - self.olcsyncprovdir = None - self.olcsyncprovfile = None class ProvisionNames(object): @@ -278,10 +277,6 @@ def provision_paths_from_lp(lp, dnsdomain): "slapd.d") paths.olcseedldif = os.path.join(paths.ldapdir, "olc_seed.ldif") - paths.olcsyncprovdir = os.path.join(paths.olcdir, - "cn=config/olcDatabase={0}config") - paths.olcsyncprovfile = os.path.join(paths.olcsyncprovdir, - "olcOverlay={0}syncprov.ldif") paths.hklm = "hklm.ldb" paths.hkcr = "hkcr.ldb" paths.hkcu = "hkcu.ldb" @@ -1479,7 +1474,7 @@ def provision_backend(setup_dir=None, message=None, slapdcommand="Start slapd with: slapd -F " + paths.olcdir + " -h \"" + ldapi_uri + " ldap://<FQHN>:<PORT>\"" if ol_olc != "yes" and ol_mmr_urls is not None: - slapdcommand="Start slapd with: slapd -F " + paths.ldapdir + "/slapd.conf -h \"" + ldapi_uri + " ldap://<FQHN>:<PORT>\"" + slapdcommand="Start slapd with: slapd -f " + paths.ldapdir + "/slapd.conf -h \"" + ldapi_uri + " ldap://<FQHN>:<PORT>\"" if ol_olc == "yes" and ol_mmr_urls is not None: slapdcommand="Start slapd with: slapd -F " + paths.olcdir + " -h \"" + ldapi_uri + " ldap://<FQHN>:<PORT>\"" @@ -1505,6 +1500,8 @@ def provision_backend(setup_dir=None, message=None, message("LDAP admin password: %s" % adminpass) message(slapdcommand) + if ol_olc == "yes" or ol_mmr_urls is not None: + message("Attention to slapd-Port: <PORT> must be different than 389!") assert isinstance(ldap_backend_type, str) assert isinstance(ldapuser, str) assert isinstance(adminpass, str) @@ -1528,19 +1525,10 @@ def provision_backend(setup_dir=None, message=None, paths.olslaptest = str(ol_slaptest) olc_command = paths.olslaptest + " -f" + paths.slapdconf + " -F" + paths.olcdir + " >/dev/null 2>&1" os.system(olc_command) - #os.remove(paths.slapdconf) - # use line below for debugging during olc-conversion with slaptest + os.remove(paths.slapdconf) + # use line below for debugging during olc-conversion with slaptest, instead of olc_command above #olc_command = paths.olslaptest + " -f" + paths.slapdconf + " -F" + paths.olcdir" - # workaround, if overlay syncprov is was not created properly during conversion to cn=config. - # otherwise, cn=config won't be replicated - if ol_olc == "yes" and ol_mmr_urls is not None: - if not os.path.exists(paths.olcsyncprovdir): - os.makedirs(paths.olcsyncprovdir, 0770) - setup_file(setup_path("olcOverlay={0}syncprov.ldif"), - os.path.join(paths.olcsyncprovdir, "olcOverlay={0}syncprov.ldif"), {}) - - def create_phpldapadmin_config(path, setup_path, ldapi_uri): """Create a PHP LDAP admin configuration file. |