[SCM] Samba Shared Repository - branch master updated
Andrew Tridgell
tridge at samba.org
Fri Oct 1 12:23:02 MDT 2010
The branch, master has been updated
via afe78c2 autobuild: fixed the tuples in the retry_task
via 2d66bb5 autobuild: cwd is needed on all command types
via f6bc4c0 s4-rpmd: fixed a use after realloc bug
via 4beff4d s4-dsdb: fail the transaction instead of asserting on error
from 9cdebd0 autobuild: Avoid unnecessary chdir() calls.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit afe78c23ad4868b1c67a3aa855ad7f59d8475412
Author: Andrew Tridgell <tridge at samba.org>
Date: Fri Oct 1 11:17:04 2010 -0700
autobuild: fixed the tuples in the retry_task
Pair-Programmed-With: Jelmer Vernooij <jelmer at samba.org>
Autobuild-User: Andrew Tridgell <tridge at samba.org>
Autobuild-Date: Fri Oct 1 18:22:22 UTC 2010 on sn-devel-104
commit 2d66bb51caf02c979f53688257dd33d7366b3ebc
Author: Andrew Tridgell <tridge at samba.org>
Date: Fri Oct 1 11:12:24 2010 -0700
autobuild: cwd is needed on all command types
commit f6bc4c08b19f5615a49d281c0792c7fe4627e9bc
Author: Andrew Tridgell <tridge at samba.org>
Date: Fri Oct 1 10:26:49 2010 -0700
s4-rpmd: fixed a use after realloc bug
we could use old_el after the base message had been re allocated, due
to adding timestamps. We need to re-find the element before using it
Pair-Programmed-With: Andrew Bartlett <abartlet at samba.org>
commit 4beff4d7ba6709009ad81e3becb691b9d81e5611
Author: Andrew Tridgell <tridge at samba.org>
Date: Fri Oct 1 10:24:46 2010 -0700
s4-dsdb: fail the transaction instead of asserting on error
It is more useful to fail the transaction and give the user an error
message than to assert when we have an error in the repl_meta_data
module
Pair-Programmed-With: Andrew Bartlett <abartlet at samba.org>
-----------------------------------------------------------------------
Summary of changes:
script/autobuild.py | 9 +++++----
source4/dsdb/samdb/ldb_modules/repl_meta_data.c | 22 ++++++++++++++++++----
2 files changed, 23 insertions(+), 8 deletions(-)
Changeset truncated at 500 lines:
diff --git a/script/autobuild.py b/script/autobuild.py
index be8006c..a2d2a2c 100755
--- a/script/autobuild.py
+++ b/script/autobuild.py
@@ -58,7 +58,8 @@ tasks = {
("test", "make test", "text/plain"), ],
}
-retry_task = [ '''set -e
+retry_task = [ ( "retry",
+ '''set -e
git remote add -t master master %s
git fetch master
while :; do
@@ -68,7 +69,7 @@ retry_task = [ '''set -e
git describe master/master > master.desc
diff old_master.desc master.desc
done
- ''' % samba_master]
+ ''' % samba_master, "test/plain" ) ]
def run_cmd(cmd, dir=".", show=None, output=False, checkfail=True):
if show is None:
@@ -78,9 +79,9 @@ def run_cmd(cmd, dir=".", show=None, output=False, checkfail=True):
if output:
return Popen([cmd], shell=True, stdout=PIPE, cwd=dir).communicate()[0]
elif checkfail:
- return check_call(cmd, shell=True)
+ return check_call(cmd, shell=True, cwd=dir)
else:
- return call(cmd, shell=True)
+ return call(cmd, shell=True, cwd=dir)
class builder(object):
diff --git a/source4/dsdb/samdb/ldb_modules/repl_meta_data.c b/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
index ebd005e..198bb80 100644
--- a/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
+++ b/source4/dsdb/samdb/ldb_modules/repl_meta_data.c
@@ -2981,9 +2981,17 @@ static int replmd_replicated_apply_merge(struct replmd_replicated_request *ar)
md_remote = replmd_replPropertyMetaData1_find_attid(rmd, DRSUAPI_ATTRIBUTE_name);
if (md_remote) {
md_local = replmd_replPropertyMetaData1_find_attid(&omd, DRSUAPI_ATTRIBUTE_name);
- SMB_ASSERT(md_local);
+ if (!md_local) {
+ DEBUG(0,(__location__ ": No md_local in RPMD\n"));
+ return replmd_replicated_request_werror(ar, WERR_DS_DRA_INTERNAL_ERROR);
+ }
if (replmd_replPropertyMetaData1_is_newer(md_local, md_remote)) {
- SMB_ASSERT(ldb_dn_compare(msg->dn, ar->search_msg->dn) != 0);
+ if (ldb_dn_compare(msg->dn, ar->search_msg->dn) != 0) {
+ DEBUG(0,(__location__ ": DNs don't match in RPMD: %s %s\n",
+ ldb_dn_get_linearized(msg->dn),
+ ldb_dn_get_linearized(ar->search_msg->dn)));
+ return replmd_replicated_request_werror(ar, WERR_DS_DRA_INTERNAL_ERROR);
+ }
/* TODO: Find appropriate local name (dn) for the object
* and modify msg->dn appropriately */
@@ -4008,12 +4016,18 @@ linked_attributes[0]:
has changed */
if (add_time_element(msg, "whenChanged", t) != LDB_SUCCESS) {
talloc_free(tmp_ctx);
- return LDB_ERR_OPERATIONS_ERROR;
+ return ldb_operr(ldb);
}
if (add_uint64_element(msg, "uSNChanged", seq_num) != LDB_SUCCESS) {
talloc_free(tmp_ctx);
- return LDB_ERR_OPERATIONS_ERROR;
+ return ldb_operr(ldb);
+ }
+
+ old_el = ldb_msg_find_element(msg, attr->lDAPDisplayName);
+ if (old_el == NULL) {
+ talloc_free(tmp_ctx);
+ return ldb_operr(ldb);
}
ret = dsdb_check_single_valued_link(attr, old_el);
--
Samba Shared Repository
More information about the samba-cvs
mailing list