svn commit: samba r12304 - in branches/SAMBA_4_0/source: param script/tests wrepl_server

metze at samba.org metze at samba.org
Sat Dec 17 15:45:39 GMT 2005


Author: metze
Date: 2005-12-17 15:45:38 +0000 (Sat, 17 Dec 2005)
New Revision: 12304

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

Log:
split out the wins partner configuration into a seperate ldb.

now $privatedir/wins_config.ldb contains the wins partners
and $lockdir/wins.ldb contains the name records

metze
Modified:
   branches/SAMBA_4_0/source/param/loadparm.c
   branches/SAMBA_4_0/source/script/tests/selftest.sh
   branches/SAMBA_4_0/source/wrepl_server/wrepl_server.c
   branches/SAMBA_4_0/source/wrepl_server/wrepl_server.h


Changeset:
Modified: branches/SAMBA_4_0/source/param/loadparm.c
===================================================================
--- branches/SAMBA_4_0/source/param/loadparm.c	2005-12-17 15:38:41 UTC (rev 12303)
+++ branches/SAMBA_4_0/source/param/loadparm.c	2005-12-17 15:45:38 UTC (rev 12304)
@@ -119,6 +119,7 @@
 	char *szConfigFile;
 	char *szSAM_URL;
 	char *szSPOOLSS_URL;
+	char *szWINS_CONFIG_URL;
 	char *szWINS_URL;
 	char *szPrivateDir;
 	char **jsInclude;
@@ -417,6 +418,7 @@
 	{"password server", P_LIST, P_GLOBAL, &Globals.szPasswordServers, NULL, NULL, FLAG_ADVANCED | FLAG_WIZARD | FLAG_DEVELOPER},
 	{"sam database", P_STRING, P_GLOBAL, &Globals.szSAM_URL, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
 	{"spoolss database", P_STRING, P_GLOBAL, &Globals.szSPOOLSS_URL, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
+	{"wins config database", P_STRING, P_GLOBAL, &Globals.szWINS_CONFIG_URL, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
 	{"wins database", P_STRING, P_GLOBAL, &Globals.szWINS_URL, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
 	{"private dir", P_STRING, P_GLOBAL, &Globals.szPrivateDir, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
 	{"passwd chat", P_STRING, P_GLOBAL, &Globals.szPasswdChat, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
@@ -613,6 +615,7 @@
 	do_parameter("private dir", dyn_PRIVATE_DIR, NULL);
 	do_parameter("sam database", "sam.ldb", NULL);
 	do_parameter("spoolss database", "spoolss.ldb", NULL);
+	do_parameter("wins config database", "wins_config.ldb", NULL);
 	do_parameter("wins database", "wins.ldb", NULL);
 	do_parameter("registry:HKEY_LOCAL_MACHINE", "hklm.ldb", NULL);
 
@@ -817,6 +820,7 @@
 FN_GLOBAL_STRING(lp_configfile, &Globals.szConfigFile)
 FN_GLOBAL_STRING(lp_sam_url, &Globals.szSAM_URL)
 FN_GLOBAL_STRING(lp_spoolss_url, &Globals.szSPOOLSS_URL)
+FN_GLOBAL_STRING(lp_wins_config_url, &Globals.szWINS_CONFIG_URL)
 FN_GLOBAL_STRING(lp_wins_url, &Globals.szWINS_URL)
 FN_GLOBAL_CONST_STRING(lp_winbind_separator, &Globals.szWinbindSeparator)
 FN_GLOBAL_BOOL(lp_winbind_sealed_pipes, &Globals.bWinbindSealedPipes)

Modified: branches/SAMBA_4_0/source/script/tests/selftest.sh
===================================================================
--- branches/SAMBA_4_0/source/script/tests/selftest.sh	2005-12-17 15:38:41 UTC (rev 12303)
+++ branches/SAMBA_4_0/source/script/tests/selftest.sh	2005-12-17 15:45:38 UTC (rev 12304)
@@ -55,7 +55,6 @@
 NCALRPCDIR=$PREFIX_ABS/ncalrpc
 LOCKDIR=$PREFIX_ABS/lockdir
 TLSDIR=$PRIVATEDIR/tls
-WINS_LDB=$PRIVATEDIR/wins.ldb
 CONFIGURATION="--configfile=$CONFFILE"
 export CONFIGURATION
 export CONFFILE
@@ -85,7 +84,7 @@
 rm -rf $PREFIX/*
 mkdir -p $PRIVATEDIR $LIBDIR $PIDDIR $NCALRPCDIR $LOCKDIR $TMPDIR $TLSDIR
 
-cat >$LOCKDIR/wins.ldif<<EOF
+cat >$PRIVATEDIR/wins_config.ldif<<EOF
 dn: name=TORTURE_26,CN=PARTNERS
 objectClass: wreplPartner
 name: TORTURE_26
@@ -156,7 +155,7 @@
     --quiet --domain $DOMAIN --realm $REALM \
     --adminpass $PASSWORD --root=$ROOT || exit 1
 
-./bin/ldbadd -H $LOCKDIR/wins.ldb < $LOCKDIR/wins.ldif >/dev/null || exit 1
+./bin/ldbadd -H $PRIVATEDIR/wins_config.ldb < $PRIVATEDIR/wins_config.ldif >/dev/null || exit 1
 
 echo "DONE"
 

Modified: branches/SAMBA_4_0/source/wrepl_server/wrepl_server.c
===================================================================
--- branches/SAMBA_4_0/source/wrepl_server/wrepl_server.c	2005-12-17 15:38:41 UTC (rev 12303)
+++ branches/SAMBA_4_0/source/wrepl_server/wrepl_server.c	2005-12-17 15:45:38 UTC (rev 12304)
@@ -33,6 +33,12 @@
 #include "ldb/include/ldb.h"
 #include "ldb/include/ldb_errors.h"
 
+static struct ldb_context *wins_config_db_connect(TALLOC_CTX *mem_ctx)
+{
+	return ldb_wrap_connect(mem_ctx, private_path(mem_ctx, lp_wins_config_url()),
+				system_session(mem_ctx), NULL, 0, NULL);
+}
+
 /*
   open winsdb
 */
@@ -43,6 +49,11 @@
 		return NT_STATUS_INTERNAL_DB_ERROR;
 	}
 
+	service->config.ldb = wins_config_db_connect(service);
+	if (!service->config.ldb) {
+		return NT_STATUS_INTERNAL_DB_ERROR;
+	}
+
 	/* the default renew interval is 6 days */
 	service->config.renew_interval	  = lp_parm_int(-1,"wreplsrv","renew_interval", 6*24*60*60);
 
@@ -85,7 +96,7 @@
 	int i;
 
 	/* find the record in the WINS database */
-	ret = ldb_search(service->wins_db, ldb_dn_explode(tmp_ctx, "CN=PARTNERS"), LDB_SCOPE_ONELEVEL,
+	ret = ldb_search(service->config.ldb, ldb_dn_explode(tmp_ctx, "CN=PARTNERS"), LDB_SCOPE_SUBTREE,
 			 "(objectClass=wreplPartner)", NULL, &res);
 	if (ret != LDB_SUCCESS) goto failed;
 	talloc_steal(tmp_ctx, res);

Modified: branches/SAMBA_4_0/source/wrepl_server/wrepl_server.h
===================================================================
--- branches/SAMBA_4_0/source/wrepl_server/wrepl_server.h	2005-12-17 15:38:41 UTC (rev 12303)
+++ branches/SAMBA_4_0/source/wrepl_server/wrepl_server.h	2005-12-17 15:45:38 UTC (rev 12304)
@@ -214,6 +214,9 @@
 
 	/* some configuration */
 	struct {
+		/* the wins config db handle */
+		struct ldb_context *ldb;
+
 		/* 
 		 * the interval (in secs) till an active record will be marked as RELEASED 
 		 */



More information about the samba-cvs mailing list