s4:provision Add comments to the provision script
authorAndrew Bartlett <abartlet@samba.org>
Mon, 17 Aug 2009 01:41:58 +0000 (11:41 +1000)
committerAndrew Bartlett <abartlet@samba.org>
Mon, 17 Aug 2009 01:47:14 +0000 (11:47 +1000)
Hopefully this will explain a bit more whey things are done the way
that they are done.

Andrew Bartlett

source4/scripting/python/samba/provision.py

index 34af462ebfb3bc7285a2a6f447b89a26fbbe2b3e..c029bea848d775cb62c6fb6f3d1734d95e40b899 100644 (file)
@@ -835,10 +835,18 @@ def setup_samdb(path, setup_path, session_info, credentials, lp,
     samdb.transaction_start()
     try:
         message("Erasing data from partitions")
-        # Load the schema (again).  This time it will force a reindex, to make the below computationally sane
+        # Load the schema (again).  This time it will force a reindex,
+        # and will therefore make the erase_partitions() below
+        # computationally sane
         samdb.set_schema_from_ldb(schema.ldb)
         samdb.erase_partitions()
     
+        # Set the domain functionality levels onto the database.
+        # Various module (the password_hash module in particular) need
+        # to know what level of AD we are emulating.
+
+        # These will be fixed into the database via the database
+        # modifictions below, but we need them set from the start.
         samdb.set_opaque_integer("domainFunctionality", domainFunctionality)
         samdb.set_opaque_integer("forestFunctionality", forestFunctionality)
         samdb.set_opaque_integer("domainControllerFunctionality", domainControllerFunctionality)
@@ -888,6 +896,7 @@ def setup_samdb(path, setup_path, session_info, credentials, lp,
             "SCHEMADN": names.schemadn,
             })
 
+        # The LDIF here was created when the Schema object was constructed
         message("Setting up sam.ldb schema")
         samdb.add_ldif(schema.schema_dn_add)
         samdb.modify_ldif(schema.schema_dn_modify)