Merge branch 'master' of ssh://git.samba.org/data/git/samba into selftest
[tprouty/samba.git] / source4 / torture / ldap / uptodatevector.c
index 7bac04caf35b8540d315567f16006fa9d9529e8a..3c491dca0544e55db4afd8e524297067f1db468d 100644 (file)
@@ -57,20 +57,20 @@ static bool test_check_uptodatevector(struct torture_context *torture,
        torture_comment(torture, "Check replUpToDateVector on partition[%s]\n",
                                 ldb_dn_get_linearized(partition_dn));
 
-       ret = ldb_search(ldb, partition_dn, LDB_SCOPE_BASE, 
-                        "(objectClass=*)", attrs, &r);
+       ret = ldb_search(ldb, torture, &r, partition_dn, LDB_SCOPE_BASE, attrs,
+                        "(objectClass=*)");
        if (ret != LDB_SUCCESS) {
                return false;
        } else if (r->count != 1) {
                talloc_free(r);
                return false;
        }
-       talloc_steal(torture, r);
 
        ZERO_STRUCT(utdv1);
        utdv_val1 = ldb_msg_find_ldb_val(r->msgs[0], "replUpToDateVector");
        if (utdv_val1) {
-               ndr_err = ndr_pull_struct_blob_all(utdv_val1, torture, &utdv1,
+               ndr_err = ndr_pull_struct_blob_all(utdv_val1, torture, 
+                                                  lp_iconv_convenience(torture->lp_ctx), &utdv1,
                                                   (ndr_pull_flags_fn_t)ndr_pull_replUpToDateVectorBlob);
                if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
                        return false;
@@ -103,20 +103,20 @@ static bool test_check_uptodatevector(struct torture_context *torture,
                ret = ldb_modify(ldb, msg);
                if (ret != LDB_SUCCESS) return false;
 
-               ret = ldb_search(ldb, partition_dn, LDB_SCOPE_BASE, 
-                                "(objectClass=*)", attrs, &r);
+               ret = ldb_search(ldb, msg, &r, partition_dn, LDB_SCOPE_BASE,
+                                attrs, "(objectClass=*)");
                if (ret != LDB_SUCCESS) {
                        return false;
                } else if (r->count != 1) {
                        talloc_free(r);
                        return false;
                }
-               talloc_steal(msg, r);
 
                ZERO_STRUCT(utdv);
                utdv_val = ldb_msg_find_ldb_val(r->msgs[0], "replUpToDateVector");
                if (utdv_val) {
-                       ndr_err = ndr_pull_struct_blob_all(utdv_val, torture, &utdv,
+                       ndr_err = ndr_pull_struct_blob_all(utdv_val, torture, 
+                                                          lp_iconv_convenience(torture->lp_ctx), &utdv,
                                                           (ndr_pull_flags_fn_t)ndr_pull_replUpToDateVectorBlob);
                        if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
                                return false;
@@ -160,7 +160,7 @@ bool torture_ldap_uptodatevector(struct torture_context *torture)
        url = talloc_asprintf(torture, "ldap://%s/", host);
        if (!url) goto failed;
 
-       ldb = ldb_wrap_connect(torture, torture->lp_ctx, url,
+       ldb = ldb_wrap_connect(torture, torture->ev, torture->lp_ctx, url,
                               NULL,
                               cmdline_credentials,
                               0, NULL);