summaryrefslogtreecommitdiffstats
path: root/ipa-server/ipaserver/dsinstance.py
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2007-10-16 10:17:39 -0400
committerRob Crittenden <rcritten@redhat.com>2007-10-16 10:17:39 -0400
commitdac58ee69321298925a1f8c403b0a443dd596a82 (patch)
tree1dddc481e9992f07135c9da3e9b646ef4158bd67 /ipa-server/ipaserver/dsinstance.py
parent233915b780f6edf01d5850ec69428f12c06a9f08 (diff)
downloadfreeipa-dac58ee69321298925a1f8c403b0a443dd596a82.tar.gz
freeipa-dac58ee69321298925a1f8c403b0a443dd596a82.tar.xz
freeipa-dac58ee69321298925a1f8c403b0a443dd596a82.zip
Enabled memberof plugin
Diffstat (limited to 'ipa-server/ipaserver/dsinstance.py')
-rw-r--r--ipa-server/ipaserver/dsinstance.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/ipa-server/ipaserver/dsinstance.py b/ipa-server/ipaserver/dsinstance.py
index 16552393c..0a6bdfc9b 100644
--- a/ipa-server/ipaserver/dsinstance.py
+++ b/ipa-server/ipaserver/dsinstance.py
@@ -31,6 +31,9 @@ SHARE_DIR = "/usr/share/ipa/"
SERVER_ROOT_64 = "/usr/lib64/dirsrv"
SERVER_ROOT_32 = "/usr/lib/dirsrv"
+def ldap_mod(fd, dn, pwd):
+ args = ["/usr/bin/ldapmodify", "-h", "127.0.0.1", "-xv", "-D", dn, "-w", pwd, "-f", fd.name]
+ run(args)
def generate_serverid():
"""Generate a UUID (universally unique identifier) suitable
@@ -89,6 +92,7 @@ class DsInstance:
self.__create_ds_user()
self.__create_instance()
self.__add_default_schemas()
+ self.__add_memberof_module()
self.__enable_ssl()
self.__certmap_conf()
try:
@@ -168,6 +172,15 @@ class DsInstance:
shutil.copyfile(SHARE_DIR + "60samba.ldif",
self.schema_dirname() + "60samba.ldif")
+ def __add_memberof_module(self):
+ memberof_txt = template_file(SHARE_DIR + "memberof-conf.ldif", self.sub_dict)
+ memberof_fd = write_tmp_file(memberof_txt)
+ try:
+ ldap_mod(memberof_fd, "cn=Directory Manager", self.dm_password)
+ except subprocess.CalledProcessError, e:
+ print "Failed to load memberof-conf.ldif", e
+ memberof_fd.close()
+
def __enable_ssl(self):
logging.debug("configuring ssl for ds instance")
dirname = self.config_dirname()