summaryrefslogtreecommitdiff
path: root/source4/scripting/python
diff options
context:
space:
mode:
authorOliver Liebel <oliver@itc.li>2009-02-25 10:27:19 +1100
committerAndrew Bartlett <abartlet@samba.org>2009-02-25 10:39:35 +1100
commit503d15e8df9075ea9cf8b2d260487e68fc68f559 (patch)
tree579eb2e97d11fdf460ff1100c06f7536ea41c306 /source4/scripting/python
parentb3d53e2ce6da661c3b41f03fdb0ecbe44579b593 (diff)
downloadsamba-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.py24
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.