svn commit: samba r14459 - in branches/SAMBA_4_0/source/nbt_server/wins: .

idra at samba.org idra at samba.org
Wed Mar 15 21:23:18 GMT 2006


Author: idra
Date: 2006-03-15 21:23:17 +0000 (Wed, 15 Mar 2006)
New Revision: 14459

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

Log:

Make this async compatible


Modified:
   branches/SAMBA_4_0/source/nbt_server/wins/wins_ldb.c


Changeset:
Modified: branches/SAMBA_4_0/source/nbt_server/wins/wins_ldb.c
===================================================================
--- branches/SAMBA_4_0/source/nbt_server/wins/wins_ldb.c	2006-03-15 19:28:47 UTC (rev 14458)
+++ branches/SAMBA_4_0/source/nbt_server/wins/wins_ldb.c	2006-03-15 21:23:17 UTC (rev 14459)
@@ -44,6 +44,11 @@
 						  struct winsdb_handle);
 	char *error = NULL;
 
+	/* do not manipulate our control entries */
+	if (ldb_dn_is_special(msg->dn)) {
+		return ldb_next_request(module, req);
+	}
+
 	if (!h) {
 		error = talloc_strdup(module, "WINS_LDB: INTERNAL ERROR: no winsdb_handle present!");
 		ldb_debug(module->ldb, LDB_DEBUG_FATAL, "%s", error);
@@ -68,28 +73,28 @@
 
 static int wins_ldb_request(struct ldb_module *module, struct ldb_request *req)
 {
-	const struct ldb_message *msg = req->op.mod.message;
+	const struct ldb_message *msg;
 
 	switch (req->operation) {
 	case LDB_REQ_ADD:
+	case LDB_ASYNC_ADD:
+
 		msg = req->op.add.message;
 		break;
+		
+	case LDB_REQ_MODIFY:
+	case LDB_ASYNC_MODIFY:
 
-	case LDB_REQ_MODIFY:
 		msg = req->op.mod.message;
 		break;
 
 	default:
-		goto call_next;
+		return ldb_next_request(module, req);
 	}
 
-	if (ldb_dn_is_special(msg->dn)) goto call_next;
-
 	return wins_ldb_verify(module, req, msg);
-
-call_next:
-	return ldb_next_request(module, req);	
 }
+	
 
 static int wins_ldb_init(struct ldb_module *ctx)
 {



More information about the samba-cvs mailing list