summaryrefslogtreecommitdiff
path: root/source3/torture/torture.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2021-01-28 10:56:18 -0800
committerJeremy Allison <jra@samba.org>2021-02-02 19:54:34 +0000
commitf9ca91bd293e9f2710c4449c5d4f5d016a066049 (patch)
tree187202a99e7263d82e5fc99099c208c2c5551ef0 /source3/torture/torture.c
parentdc701959cad7bf15aa47cad6451212606520f67f (diff)
downloadsamba-f9ca91bd293e9f2710c4449c5d4f5d016a066049.tar.gz
s3: smbtorture3: Ensure run_tcon_test() always replaces any saved tcon and shuts down correctly even in error paths.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13992 Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'source3/torture/torture.c')
-rw-r--r--source3/torture/torture.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index cdf5d5ca3aa..4f572902494 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -1347,6 +1347,7 @@ static bool run_tcon_test(int dummy)
if (!NT_STATUS_IS_OK(status)) {
printf("%s refused 2nd tree connect (%s)\n", host,
nt_errstr(status));
+ cli_state_restore_tcon(cli, orig_tcon);
cli_shutdown(cli);
return False;
}
@@ -1399,6 +1400,8 @@ static bool run_tcon_test(int dummy)
status = cli_close(cli, fnum1);
if (!NT_STATUS_IS_OK(status)) {
printf("close failed (%s)\n", nt_errstr(status));
+ cli_state_restore_tcon(cli, orig_tcon);
+ cli_shutdown(cli);
return False;
}
@@ -1407,6 +1410,8 @@ static bool run_tcon_test(int dummy)
status = cli_tdis(cli);
if (!NT_STATUS_IS_OK(status)) {
printf("secondary tdis failed (%s)\n", nt_errstr(status));
+ cli_state_restore_tcon(cli, orig_tcon);
+ cli_shutdown(cli);
return False;
}