svn commit: samba r7777 - in branches/SAMBA_4_0/source/ldap_server: .

tridge at samba.org tridge at samba.org
Mon Jun 20 04:59:11 GMT 2005


Author: tridge
Date: 2005-06-20 04:59:10 +0000 (Mon, 20 Jun 2005)
New Revision: 7777

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

Log:
allow for overriding the location of the sam databasein the ldap server, using 
ldapsrv:samdb option. This allows the following:

          sam database=ldap://localhost
          ldapsrv:samdb=tdb:///home/tridge/samba/samba4/prefix/private/sam.ldb

which allows us to test putting the sam on an ldap server using our
own ldap server. This is a great stress test for the ldap code.

Modified:
   branches/SAMBA_4_0/source/ldap_server/ldap_backend.c
   branches/SAMBA_4_0/source/ldap_server/ldap_hacked_ldb.c
   branches/SAMBA_4_0/source/ldap_server/ldap_simple_ldb.c


Changeset:
Modified: branches/SAMBA_4_0/source/ldap_server/ldap_backend.c
===================================================================
--- branches/SAMBA_4_0/source/ldap_server/ldap_backend.c	2005-06-20 04:56:43 UTC (rev 7776)
+++ branches/SAMBA_4_0/source/ldap_server/ldap_backend.c	2005-06-20 04:59:10 UTC (rev 7777)
@@ -255,3 +255,17 @@
 		return ldapsrv_unwilling(call, 2);
 	}
 }
+
+
+/*
+  connect to the sam database
+*/
+struct ldb_context *ldapsrv_sam_connect(struct ldapsrv_call *call)
+{
+	const char *url;
+	url = lp_parm_string(-1, "ldapsrv", "samdb");
+	if (url) {
+		return ldb_wrap_connect(call, url, 0, NULL);
+	}
+	return samdb_connect(call);
+}

Modified: branches/SAMBA_4_0/source/ldap_server/ldap_hacked_ldb.c
===================================================================
--- branches/SAMBA_4_0/source/ldap_server/ldap_hacked_ldb.c	2005-06-20 04:56:43 UTC (rev 7776)
+++ branches/SAMBA_4_0/source/ldap_server/ldap_hacked_ldb.c	2005-06-20 04:59:10 UTC (rev 7777)
@@ -461,7 +461,7 @@
 }
 
 static NTSTATUS hldb_Search(struct ldapsrv_partition *partition, struct ldapsrv_call *call,
-				     struct ldap_SearchRequest *r)
+			    struct ldap_SearchRequest *r)
 {
 	NTSTATUS status;
 	void *local_ctx;
@@ -481,7 +481,7 @@
 	local_ctx = talloc_named(call, 0, "hldb_Search local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	status = hacked_Search(partition, call, r, samdb);
@@ -618,7 +618,7 @@
 	local_ctx = talloc_named(call, 0, "hldb_Add local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -717,7 +717,7 @@
 	local_ctx = talloc_named(call, 0, "hldb_Del local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -772,7 +772,7 @@
 	local_ctx = talloc_named(call, 0, "hldb_Modify local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -889,7 +889,7 @@
 	local_ctx = talloc_named(call, 0, "hldb_Compare local_memory_context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -957,7 +957,7 @@
 	local_ctx = talloc_named(call, 0, "hldb_ModifyDN local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	olddn = ldap_parse_dn(local_ctx, r->dn);

Modified: branches/SAMBA_4_0/source/ldap_server/ldap_simple_ldb.c
===================================================================
--- branches/SAMBA_4_0/source/ldap_server/ldap_simple_ldb.c	2005-06-20 04:56:43 UTC (rev 7776)
+++ branches/SAMBA_4_0/source/ldap_server/ldap_simple_ldb.c	2005-06-20 04:59:10 UTC (rev 7777)
@@ -54,7 +54,7 @@
 	local_ctx = talloc_named(call, 0, "sldb_Search local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	basedn = ldap_parse_dn(local_ctx, r->basedn);
@@ -179,7 +179,7 @@
 	local_ctx = talloc_named(call, 0, "sldb_Add local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -277,7 +277,7 @@
 	local_ctx = talloc_named(call, 0, "sldb_Del local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -332,7 +332,7 @@
 	local_ctx = talloc_named(call, 0, "sldb_Modify local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -444,7 +444,7 @@
 	local_ctx = talloc_named(call, 0, "sldb_Compare local_memory_context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	dn = ldap_parse_dn(local_ctx, r->dn);
@@ -512,7 +512,7 @@
 	local_ctx = talloc_named(call, 0, "sldb_ModifyDN local memory context");
 	NT_STATUS_HAVE_NO_MEMORY(local_ctx);
 
-	samdb = samdb_connect(local_ctx);
+	samdb = ldapsrv_sam_connect(call);
 	NT_STATUS_HAVE_NO_MEMORY(samdb);
 
 	olddn = ldap_parse_dn(local_ctx, r->dn);



More information about the samba-cvs mailing list