From: Stefan Metzmacher Date: Mon, 26 May 2025 11:01:48 +0000 (+0200) Subject: s4:torture/smb2: force a disconnect on all connections as async_credits tests X-Git-Tag: tdb-1.4.14~215 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=efe95625de849544288c8ef42c9504ef615f913d;p=thirdparty%2Fsamba.git s4:torture/smb2: force a disconnect on all connections as async_credits tests Signed-off-by: Stefan Metzmacher Reviewed-by: Volker Lendecke --- diff --git a/source4/torture/smb2/credits.c b/source4/torture/smb2/credits.c index 1ab1cfc72c9..5389f3430d4 100644 --- a/source4/torture/smb2/credits.c +++ b/source4/torture/smb2/credits.c @@ -741,7 +741,12 @@ static bool test_ipc_max_data_zero(struct torture_context *tctx, max_credits, 0); out: - TALLOC_FREE(tree1); + if (tree1 != NULL) { + smbXcli_conn_disconnect(tree1->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + smbXcli_conn_disconnect(tree0->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); return ok; } @@ -789,7 +794,12 @@ static bool test_1conn_ipc_max_async_credits(struct torture_context *tctx, max_credits, 1024); /* max_data */ out: - TALLOC_FREE(tree1); + if (tree1 != NULL) { + smbXcli_conn_disconnect(tree1->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + smbXcli_conn_disconnect(transport0->conn, + NT_STATUS_LOCAL_DISCONNECT); return ok; } @@ -868,8 +878,16 @@ static bool test_2conn_ipc_max_async_credits(struct torture_context *tctx, max_credits, 1024); /* max_data */ out: - TALLOC_FREE(tree2); - TALLOC_FREE(tree1); + if (tree2 != NULL) { + smbXcli_conn_disconnect(tree2->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + if (tree1 != NULL) { + smbXcli_conn_disconnect(tree1->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + smbXcli_conn_disconnect(transport0->conn, + NT_STATUS_LOCAL_DISCONNECT); return ok; } @@ -969,6 +987,16 @@ static bool test_multichannel_ipc_max_async_credits( max_credits, 1024); /* max_data */ out: + if (tree1a != NULL) { + smbXcli_conn_disconnect(tree1a->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + if (transport1b != NULL) { + smbXcli_conn_disconnect(transport1b->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + smbXcli_conn_disconnect(tree0->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); return ok; } @@ -1406,6 +1434,8 @@ out: /* Cleanup TESTDIR */ smb2_deltree(tree0, TESTDIR); + smbXcli_conn_disconnect(tree0->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); return ok; } @@ -1446,6 +1476,10 @@ out: /* Cleanup TESTDIR */ smb2_deltree(tree1, TESTDIR); + smbXcli_conn_disconnect(tree1->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); + smbXcli_conn_disconnect(tree2->session->transport->conn, + NT_STATUS_LOCAL_DISCONNECT); return ok; } @@ -1534,6 +1568,13 @@ out: /* Cleanup TESTDIR */ smb2_deltree(tree1a, TESTDIR); + smbXcli_conn_disconnect(transport1a->conn, + NT_STATUS_LOCAL_DISCONNECT); + if (transport1b != NULL) { + smbXcli_conn_disconnect(transport1b->conn, + NT_STATUS_LOCAL_DISCONNECT); + } + return ok; }