[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-183-gf1dbd58

Andrew Tridgell tridge at samba.org
Thu Jul 2 13:19:13 GMT 2009


The branch, master has been updated
       via  f1dbd58a99a5dc47065f3ad6d248150600586ac7 (commit)
       via  0fcd465340a190578723ffa8597e2b8df1400b30 (commit)
      from  d49a0e5f7d3788c67aa78d4c856fd3922d13fff9 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit f1dbd58a99a5dc47065f3ad6d248150600586ac7
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Jul 2 10:48:24 2009 +0200

    talloc: change TALLOC_MAGIC for version 2.0.0
    
    metze

commit 0fcd465340a190578723ffa8597e2b8df1400b30
Author: Andrew Tridgell <tridge at samba.org>
Date:   Thu Jul 2 16:19:37 2009 +1000

    show attribute values in sorted order to make comparison easier

-----------------------------------------------------------------------

Summary of changes:
 lib/talloc/talloc.c              |   13 ++++++++++++-
 source4/scripting/bin/fullschema |    5 +++++
 2 files changed, 17 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/lib/talloc/talloc.c b/lib/talloc/talloc.c
index e68b653..a23df38 100644
--- a/lib/talloc/talloc.c
+++ b/lib/talloc/talloc.c
@@ -57,7 +57,9 @@
 
 
 #define MAX_TALLOC_SIZE 0x10000000
-#define TALLOC_MAGIC 0xe814ec70
+#define TALLOC_MAGIC_V1 0xe814ec70
+#define TALLOC_MAGIC_V2 0xe814ec80
+#define TALLOC_MAGIC    TALLOC_MAGIC_V2
 #define TALLOC_FLAG_FREE 0x01
 #define TALLOC_FLAG_LOOP 0x02
 #define TALLOC_FLAG_POOL 0x04		/* This is a talloc pool */
@@ -155,6 +157,11 @@ static void talloc_abort(const char *reason)
 	talloc_abort_fn(reason);
 }
 
+static void talloc_abort_magic_v1(void)
+{
+	talloc_abort("Bad talloc magic value - old magic v1 used");
+}
+
 static void talloc_abort_double_free(void)
 {
 	talloc_abort("Bad talloc magic value - double free");
@@ -171,6 +178,10 @@ static inline struct talloc_chunk *talloc_chunk_from_ptr(const void *ptr)
 	const char *pp = (const char *)ptr;
 	struct talloc_chunk *tc = discard_const_p(struct talloc_chunk, pp - TC_HDR_SIZE);
 	if (unlikely((tc->flags & (TALLOC_FLAG_FREE | ~0xF)) != TALLOC_MAGIC)) { 
+		if ((tc->flags & (~0xF)) == TALLOC_MAGIC_V1) {
+			talloc_abort_magic_v1();
+		}
+
 		if (tc->flags & TALLOC_FLAG_FREE) {
 			talloc_abort_double_free();
 		} else {
diff --git a/source4/scripting/bin/fullschema b/source4/scripting/bin/fullschema
index 41c45f3..4c73100 100755
--- a/source4/scripting/bin/fullschema
+++ b/source4/scripting/bin/fullschema
@@ -139,8 +139,13 @@ def write_ldif_one(o, attrs):
             continue
         # special case for oMObjectClass, which is a binary object
         v = o[a]
+        list = []
         for j in v:
             value = fix_dn(j)
+            list.append(value)
+        list.sort()
+        for j in list:
+            value = fix_dn(j)
             if a != "cn":
                 if a == "oMObjectClass":
                     print "%s:: %s" % (a, base64.b64encode(value))


-- 
Samba Shared Repository


More information about the samba-cvs mailing list