]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s4:torture/rpc: make use of dcerpc_binding_handle_transport_session_key()
authorStefan Metzmacher <metze@samba.org>
Sat, 14 Sep 2024 12:31:58 +0000 (14:31 +0200)
committerJule Anger <janger@samba.org>
Thu, 12 Jun 2025 11:27:14 +0000 (11:27 +0000)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
(cherry picked from commit 4ccd2dd8a2f78bcd53c047889b8043e8d95a6d55)

source4/torture/rpc/backupkey.c
source4/torture/rpc/forest_trust.c
source4/torture/rpc/lsa.c
source4/torture/rpc/samba3rpc.c
source4/torture/rpc/samr.c
source4/torture/rpc/samsync.c
source4/torture/rpc/session_key.c
source4/torture/rpc/testjoin.c
source4/torture/rpc/wkssvc.c

index d03e31b77041cdceaf25d541d94bf797c64ec2bb..82bd4a02000f2ddc7a95d3927af84838e1c7420d 100644 (file)
@@ -1887,8 +1887,9 @@ static bool test_ServerWrap_encrypt_decrypt_manual(struct torture_context *tctx,
 
        preferred_key.data = r_query_secret.out.new_val->buf->data;
        preferred_key.length = r_query_secret.out.new_val->buf->size;
-       torture_assert_ntstatus_ok(tctx, dcerpc_fetch_session_key(lsa_p, &session_key),
-                                  "dcerpc_fetch_session_key failed");
+       torture_assert_ntstatus_ok(tctx,
+               dcerpc_binding_handle_transport_session_key(lsa_b, tctx, &session_key),
+               "transport_session_key failed");
 
        torture_assert_ntstatus_ok(tctx,
                                   sess_decrypt_blob(tctx,
index c4ca02da58ee81c3b0da1e7da801249747cdc7ed..6a82b44ec0f7060ce6a834c7ff99af89ba001d14 100644 (file)
@@ -826,6 +826,7 @@ static bool test_setup_trust(struct torture_context *tctx,
                             DATA_BLOB *auth_blob)
 
 {
+       struct dcerpc_binding_handle *b = p->binding_handle;
        DATA_BLOB session_key;
        struct lsa_TrustDomainInfoAuthInfoInternal authinfo;
        NTSTATUS status;
@@ -839,9 +840,9 @@ static bool test_setup_trust(struct torture_context *tctx,
                return false;
        }
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, p, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
-               torture_comment(tctx, "dcerpc_fetch_session_key failed - %s\n",
+               torture_comment(tctx, "transport_session_key failed - %s\n",
                                nt_errstr(status));
                return false;
        }
index 4d729f3e7feaf4813b4d17a8464125c12cf06252..13d542569449f0a1d43b639f46f74330bf0b99fb 100644 (file)
@@ -1730,8 +1730,9 @@ static bool test_CreateSecret(struct dcerpc_pipe *p,
                torture_assert_ntstatus_ok(tctx, r2.out.result,
                                           "OpenSecret failed");
 
-               torture_assert_ntstatus_ok(tctx, dcerpc_fetch_session_key(p, &session_key),
-                                          "dcerpc_fetch_session_key failed");
+               torture_assert_ntstatus_ok(tctx,
+                       dcerpc_binding_handle_transport_session_key(b, tctx, &session_key),
+                       "transport_session_key failed");
 
                enc_key = sess_encrypt_string(secret1, &session_key);
 
@@ -4658,9 +4659,9 @@ static bool test_CreateTrustedDomainEx_common(struct dcerpc_pipe *p,
        domsid = talloc_array(tctx, struct dom_sid *, num_trusts);
        trustdom_handle = talloc_array(tctx, struct policy_handle, num_trusts);
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
-               torture_comment(tctx, "dcerpc_fetch_session_key failed - %s\n", nt_errstr(status));
+               torture_comment(tctx, "transport_session_key failed - %s\n", nt_errstr(status));
                return false;
        }
 
index 0e96a30888100415d4018607005c7e00bd35cf99..2141b6a78b06afc1d59f9ab74f2f3fe0a91e7925 100644 (file)
@@ -668,9 +668,11 @@ static bool create_user(struct torture_context *tctx,
                encode_pw_buffer(u_info.info23.password.data, password,
                                 STR_UNICODE);
 
-               status = dcerpc_fetch_session_key(samr_pipe, &session_key);
+               status = dcerpc_binding_handle_transport_session_key(samr_handle,
+                                                                    tctx,
+                                                                    &session_key);
                if (!NT_STATUS_IS_OK(status)) {
-                       torture_comment(tctx, "dcerpc_fetch_session_key failed\n");
+                       torture_comment(tctx, "transport_session_key failed\n");
                        goto done;
                }
 
@@ -890,9 +892,11 @@ static bool join3(struct torture_context *tctx,
                i21->password_expired = 1;
                */
 
-               status = dcerpc_fetch_session_key(samr_pipe, &session_key);
+               status = dcerpc_binding_handle_transport_session_key(samr_handle,
+                                                                    tctx,
+                                                                    &session_key);
                if (!NT_STATUS_IS_OK(status)) {
-                       torture_comment(tctx, "dcerpc_fetch_session_key failed: %s\n",
+                       torture_comment(tctx, "transport_session_key failed: %s\n",
                                 nt_errstr(status));
                        goto done;
                }
@@ -928,9 +932,11 @@ static bool join3(struct torture_context *tctx,
                /* just to make this test pass */
                u_info.info24.password_expired = 1;
 
-               status = dcerpc_fetch_session_key(samr_pipe, &session_key);
+               status = dcerpc_binding_handle_transport_session_key(samr_handle,
+                                                                    tctx,
+                                                                    &session_key);
                if (!NT_STATUS_IS_OK(status)) {
-                       torture_comment(tctx, "dcerpc_fetch_session_key failed\n");
+                       torture_comment(tctx, "transport_session_key failed\n");
                        goto done;
                }
 
index 806936e9055feafea0f87bcecc7e524e6e0a2f08..2d3788e05b5c790bda6d8383b1d14b7a7cc5eab5 100644 (file)
@@ -645,7 +645,7 @@ static bool test_SetUserPass(struct dcerpc_pipe *p, struct torture_context *tctx
 
        u.info24.password_expired = 0;
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -710,7 +710,7 @@ static bool test_SetUserPass_23(struct dcerpc_pipe *p, struct torture_context *t
 
        u.info23.info.fields_present = fields_present;
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -739,7 +739,7 @@ static bool test_SetUserPass_23(struct dcerpc_pipe *p, struct torture_context *t
                *password = newpass;
        }
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -813,7 +813,7 @@ static bool test_SetUserPass_32(struct dcerpc_pipe *p, struct torture_context *t
 
        u.info32.info.fields_present = fields_present;
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx,
                               TORTURE_FAIL,
@@ -938,7 +938,7 @@ static bool test_SetUserPass_31(struct dcerpc_pipe *p, struct torture_context *t
 
        u.info31.password_expired = 0;
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -1040,7 +1040,7 @@ static bool test_SetUserPassEx(struct dcerpc_pipe *p, struct torture_context *tc
 
        u.info26.password_expired = 0;
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -1133,7 +1133,7 @@ static bool test_SetUserPass_25(struct dcerpc_pipe *p, struct torture_context *t
 
        u.info25.info.fields_present = fields_present;
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -1228,7 +1228,7 @@ static bool test_SetUserPass_18(struct dcerpc_pipe *p, struct torture_context *t
        E_md4hash(newpass, nt_hash);
        E_deshash(newpass, lm_hash);
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -1316,7 +1316,7 @@ static bool test_SetUserPass_21(struct dcerpc_pipe *p, struct torture_context *t
                u.info21.nt_password_set = true;
        }
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -1506,7 +1506,7 @@ static bool test_SetUserPass_level_ex(struct dcerpc_pipe *p,
                break;
        }
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
@@ -3218,7 +3218,7 @@ bool test_ChangePasswordRandomBytes(struct dcerpc_pipe *p, struct torture_contex
 
        pw_data = data_blob_const(u.info25.password.data, 516);
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_result(tctx, TORTURE_FAIL, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
index 9111df9feed055716483ec31e1d18d785cd18382..40bea6e8e2d295dfdfb411947d2dde1a9a69fadd 100644 (file)
@@ -933,9 +933,11 @@ static bool samsync_handle_secret(struct torture_context *tctx,
   We would like to do this, but it is NOT_SUPPORTED on win2k3
   TEST_SEC_DESC_EQUAL(secret->sdbuf, lsa, &sec_handle);
 */
-       status = dcerpc_fetch_session_key(samsync_state->p_lsa, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(samsync_state->b_lsa,
+                                                            mem_ctx,
+                                                            &session_key);
        if (!NT_STATUS_IS_OK(status)) {
-               torture_comment(tctx, "dcerpc_fetch_session_key failed - %s\n", nt_errstr(status));
+               torture_comment(tctx, "transport_session_key failed - %s\n", nt_errstr(status));
                return false;
        }
 
index 96f9965a0bd175f200da0994ce4c4c06e97412a9..26acb0ccfffa7a7ab54fafd4adc1fe56f66ec951 100644 (file)
@@ -66,8 +66,8 @@ static bool test_CreateSecret_basic(struct dcerpc_pipe *p,
                "CreateSecret failed");
        torture_assert_ntstatus_ok(tctx, r.out.result, "CreateSecret failed");
 
-       status = dcerpc_fetch_session_key(p, &session_key);
-       torture_assert_ntstatus_ok(tctx, status, "dcerpc_fetch_session_key failed");
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
+       torture_assert_ntstatus_ok(tctx, status, "transport_session_key failed");
 
        enc_key = sess_encrypt_string(secret1, &session_key);
 
index 6cf0232d82ef83698c4eaf4b436e1b5c4fcafff8..133b9f09c43c3814540801ab66f99fa0225c41d3 100644 (file)
@@ -332,7 +332,7 @@ again:
 
        u.info24.password_expired = 0;
 
-       status = dcerpc_fetch_session_key(join->p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                torture_comment(tctx, "SetUserInfo level %u - no session key - %s\n",
                       s.in.level, nt_errstr(status));
index c43e16f2e2de9f66401e008e23b8ec914e11013c..a77ece44b2b5d413c566c1c139c816d908b9bc76 100644 (file)
@@ -1236,7 +1236,7 @@ static bool test_NetrJoinDomain2(struct torture_context *tctx,
                return false;
        }
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                return false;
        }
@@ -1324,7 +1324,7 @@ static bool test_NetrUnjoinDomain2(struct torture_context *tctx,
                return false;
        }
 
-       status = dcerpc_fetch_session_key(p, &session_key);
+       status = dcerpc_binding_handle_transport_session_key(b, tctx, &session_key);
        if (!NT_STATUS_IS_OK(status)) {
                return false;
        }