svn commit: samba r26282 - in branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules: .

abartlet at samba.org abartlet at samba.org
Tue Dec 4 03:37:41 GMT 2007


Author: abartlet
Date: 2007-12-04 03:37:41 +0000 (Tue, 04 Dec 2007)
New Revision: 26282

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

Log:
These modules expect errors, but if we don't wipe the error string, we
get phony error strings at the caller, which is very confusing.

Andrew Bartlett

Modified:
   branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/objectclass.c
   branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/subtree_delete.c


Changeset:
Modified: branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/objectclass.c
===================================================================
--- branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/objectclass.c	2007-12-04 03:13:12 UTC (rev 26281)
+++ branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/objectclass.c	2007-12-04 03:37:41 UTC (rev 26282)
@@ -453,6 +453,9 @@
 	if (ac->search_res == NULL) {
 		if (ldb_dn_compare(ldb_get_root_basedn(ac->module->ldb), ac->orig_req->op.add.message->dn) == 0) {
 			/* Allow the tree to be started */
+			
+			/* but don't keep any error string, it's meaningless */
+			ldb_set_errstring(ac->module->ldb, NULL);
 		} else {
 			ldb_asprintf_errstring(ac->module->ldb, "objectclass: Cannot add %s, parent does not exist!", 
 					       ldb_dn_get_linearized(ac->orig_req->op.add.message->dn));

Modified: branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/subtree_delete.c
===================================================================
--- branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/subtree_delete.c	2007-12-04 03:13:12 UTC (rev 26281)
+++ branches/SAMBA_4_0/source/dsdb/samdb/ldb_modules/subtree_delete.c	2007-12-04 03:37:41 UTC (rev 26282)
@@ -89,6 +89,10 @@
 		}
 		*req = *ac->orig_req;
 		
+		/* Ensure any (io) errors during the search for
+		 * children don't propgate back in the error string */
+		ldb_set_errstr(ac->module->ldb, NULL);
+
 		ac->down_req = req;
 		ac->step = SD_DO_DEL;
 		return ldb_next_request(ac->module, req);



More information about the samba-cvs mailing list