s4-test: Use ldb_msg_diff_ex() in torture/rpc/dssync.c test
authorKamen Mazdrashki <kamenim@samba.org>
Fri, 9 Jul 2010 02:51:00 +0000 (05:51 +0300)
committerKamen Mazdrashki <kamenim@samba.org>
Sat, 10 Jul 2010 20:03:13 +0000 (23:03 +0300)
source4/torture/rpc/dssync.c

index 49400bc105c2a4642d12ffa45c7e55c2cf1b53db..2efb9e7bb1511d793b11a0452fb535ac00b7ea8d 100644 (file)
@@ -575,8 +575,9 @@ static bool test_analyse_objects(struct torture_context *tctx,
                }
                
                
-               new_msg = ldb_msg_diff(ldb, drs_msg, ldap_msg);
-               talloc_steal(search_req, new_msg);
+               ret = ldb_msg_diff_ex(ldb, drs_msg, ldap_msg,
+                                     (TALLOC_CTX*)search_req, &new_msg);
+               torture_assert(tctx, ret == LDB_SUCCESS, "ldb_msg_diff_ex() has failed");
                if (new_msg->num_elements != 0) {
                        char *s;
                        struct ldb_ldif ldif;
@@ -585,7 +586,9 @@ static bool test_analyse_objects(struct torture_context *tctx,
                        s = ldb_ldif_write_string(ldb, new_msg, &ldif);
                        s = talloc_asprintf(tctx, "\n# Difference in between DRS and LDAP objects: \n%s\n", s);
 
-                       ldif.msg = ldb_msg_diff(ldb, ldap_msg, drs_msg);
+                       ret = ldb_msg_diff_ex(ldb, ldap_msg, drs_msg,
+                                             (TALLOC_CTX*)search_req, &ldif.msg);
+                       torture_assert(tctx, ret == LDB_SUCCESS, "ldb_msg_diff_ex() has failed");
                        s = talloc_asprintf_append(s,
                                                   "\n# Difference in between LDAP and DRS objects: \n%s\n",
                                                   ldb_ldif_write_string(ldb, new_msg, &ldif));