svn commit: samba r13719 - in trunk/source/lib: .

idra at samba.org idra at samba.org
Mon Feb 27 16:26:20 GMT 2006


Author: idra
Date: 2006-02-27 16:26:19 +0000 (Mon, 27 Feb 2006)
New Revision: 13719

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=13719

Log:

Make it so that a brand new server does not need to migrate
policies if you chose the ldapsam backend.
Make it also easy to move to ldapsam by removing the account_policy.tdb
file if you don't have any good policy set there.

I think the right thing would be also to migrate automatically to ldap
policies if an old file is found.

Simo.


Modified:
   trunk/source/lib/account_pol.c


Changeset:
Modified: trunk/source/lib/account_pol.c
===================================================================
--- trunk/source/lib/account_pol.c	2006-02-27 16:18:32 UTC (rev 13718)
+++ trunk/source/lib/account_pol.c	2006-02-27 16:26:19 UTC (rev 13719)
@@ -262,10 +262,18 @@
 		return True;
 	}
 
-	tdb = tdb_open_log(lock_path("account_policy.tdb"), 0, TDB_DEFAULT, O_RDWR|O_CREAT, 0600);
-	if (!tdb) {
-		DEBUG(0,("Failed to open account policy database\n"));
-		return False;
+	tdb = tdb_open_log(lock_path("account_policy.tdb"), 0, TDB_DEFAULT, O_RDWR, 0600);
+	if (!tdb) { /* the account policies files does not exist or open failed, try to create a new one */
+		tdb = tdb_open_log(lock_path("account_policy.tdb"), 0, TDB_DEFAULT, O_RDWR|O_CREAT, 0600);
+		if (!tdb) {
+			DEBUG(0,("Failed to open account policy database\n"));
+			return False;
+		}
+		/* creation was successful */
+	       	/* add AP_MIGRATED_TO_PASSDB speacial key */
+		/* so that you do not need to migrate policies */
+		/* on brand new servers as it does not make sense */
+		account_policy_migrated(True);
 	}
 
 	/* handle a Samba upgrade */



More information about the samba-cvs mailing list