diff options
author | Andrew Bartlett <abartlet@samba.org> | 2008-08-19 11:43:41 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2008-08-19 11:43:41 +1000 |
commit | 47d80366bef5e62b6727a574b2300cc94a2e18f7 (patch) | |
tree | 230c0c76f43e020d6232352ae6f1ba9ad0706880 /source4 | |
parent | bb80a19714048def04b9d94d4e9f125a20a95822 (diff) | |
download | samba-47d80366bef5e62b6727a574b2300cc94a2e18f7.tar.gz samba-47d80366bef5e62b6727a574b2300cc94a2e18f7.tar.bz2 samba-47d80366bef5e62b6727a574b2300cc94a2e18f7.zip |
Fix templates.ldb reprovision handling.
This sets the attributes in a seperate transaction, and allows a
forced delete of the whole file.
Andrew Bartlett
(This used to be commit 423db2468ba3dac89cebc59c8498c0b08c5f3d7b)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/scripting/python/samba/provision.py | 12 | ||||
-rw-r--r-- | source4/setup/provision_templates.ldif | 10 | ||||
-rw-r--r-- | source4/setup/provision_templates_init.ldif | 10 |
3 files changed, 21 insertions, 11 deletions
diff --git a/source4/scripting/python/samba/provision.py b/source4/scripting/python/samba/provision.py index 4f7fbfc6e6..836509a620 100644 --- a/source4/scripting/python/samba/provision.py +++ b/source4/scripting/python/samba/provision.py @@ -617,7 +617,17 @@ def setup_templatesdb(path, setup_path, session_info, credentials, lp): """ templates_ldb = SamDB(path, session_info=session_info, credentials=credentials, lp=lp) - templates_ldb.erase() + # Wipes the database + try: + templates_ldb.erase() + except: + os.unlink(path) + + templates_ldb.load_ldif_file_add(setup_path("provision_templates_init.ldif")) + + templates_ldb = SamDB(path, session_info=session_info, + credentials=credentials, lp=lp) + templates_ldb.load_ldif_file_add(setup_path("provision_templates.ldif")) diff --git a/source4/setup/provision_templates.ldif b/source4/setup/provision_templates.ldif index 8f4ed08252..04257549d5 100644 --- a/source4/setup/provision_templates.ldif +++ b/source4/setup/provision_templates.ldif @@ -2,16 +2,6 @@ # Templates to be put in templates.ldb. Not part of main samdb any more. ### -dn: @OPTIONS -checkBaseOnSearch: TRUE - -dn: @INDEXLIST -@IDXATTR: cn - -dn: @ATTRIBUTES -cn: CASE_INSENSITIVE -dn: CASE_INSENSITIVE - dn: CN=Templates objectClass: top objectClass: container diff --git a/source4/setup/provision_templates_init.ldif b/source4/setup/provision_templates_init.ldif new file mode 100644 index 0000000000..6d6a3c228c --- /dev/null +++ b/source4/setup/provision_templates_init.ldif @@ -0,0 +1,10 @@ +dn: @OPTIONS +checkBaseOnSearch: TRUE + +dn: @INDEXLIST +@IDXATTR: cn + +dn: @ATTRIBUTES +cn: CASE_INSENSITIVE +dn: CASE_INSENSITIVE + |