From 4f75e4c83fa49592c1a87fb757edae46160cb9f0 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 4 Feb 2010 20:19:05 +1100 Subject: [PATCH] s4-torture: handle NT_STATUS_CONNECTION_RESET a CONNECTION_RESET is now the normal "client disconnect" status code --- source4/torture/raw/lockbench.c | 6 ++++-- source4/torture/raw/offline.c | 3 ++- source4/torture/raw/openbench.c | 9 ++++++--- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/source4/torture/raw/lockbench.c b/source4/torture/raw/lockbench.c index a3fe03370fd..98ca5f37a47 100644 --- a/source4/torture/raw/lockbench.c +++ b/source4/torture/raw/lockbench.c @@ -226,7 +226,8 @@ static void lock_completion(struct smbcli_request *req) state->req = NULL; if (!NT_STATUS_IS_OK(status)) { if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE) || - NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT)) { + NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT) || + NT_STATUS_EQUAL(status, NT_STATUS_CONNECTION_RESET)) { talloc_free(state->tree); state->tree = NULL; num_connected--; @@ -264,7 +265,8 @@ static void echo_completion(struct smbcli_request *req) struct benchlock_state *state = (struct benchlock_state *)req->async.private_data; NTSTATUS status = smbcli_request_simple_recv(req); if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE) || - NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT)) { + NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT) || + NT_STATUS_EQUAL(status, NT_STATUS_CONNECTION_RESET)) { talloc_free(state->tree); state->tree = NULL; num_connected--; diff --git a/source4/torture/raw/offline.c b/source4/torture/raw/offline.c index de72c88b5c1..3b8bbdd53a0 100644 --- a/source4/torture/raw/offline.c +++ b/source4/torture/raw/offline.c @@ -317,7 +317,8 @@ static void echo_completion(struct smbcli_request *req) struct offline_state *state = (struct offline_state *)req->async.private_data; NTSTATUS status = smbcli_request_simple_recv(req); if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE) || - NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT)) { + NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT) || + NT_STATUS_EQUAL(status, NT_STATUS_CONNECTION_RESET)) { talloc_free(state->tree); state->tree = NULL; num_connected--; diff --git a/source4/torture/raw/openbench.c b/source4/torture/raw/openbench.c index 2716f6a5285..837b7c345a6 100644 --- a/source4/torture/raw/openbench.c +++ b/source4/torture/raw/openbench.c @@ -222,7 +222,8 @@ static void open_completed(struct smbcli_request *req) state->req_open = NULL; if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE) || - NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT)) { + NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT) || + NT_STATUS_EQUAL(status, NT_STATUS_CONNECTION_RESET)) { talloc_free(state->tree); talloc_free(state->cli); state->tree = NULL; @@ -281,7 +282,8 @@ static void close_completed(struct smbcli_request *req) state->req_close = NULL; if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE) || - NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT)) { + NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT) || + NT_STATUS_EQUAL(status, NT_STATUS_CONNECTION_RESET)) { talloc_free(state->tree); talloc_free(state->cli); state->tree = NULL; @@ -315,7 +317,8 @@ static void echo_completion(struct smbcli_request *req) struct benchopen_state *state = (struct benchopen_state *)req->async.private_data; NTSTATUS status = smbcli_request_simple_recv(req); if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE) || - NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT)) { + NT_STATUS_EQUAL(status, NT_STATUS_LOCAL_DISCONNECT) || + NT_STATUS_EQUAL(status, NT_STATUS_CONNECTION_RESET)) { talloc_free(state->tree); state->tree = NULL; num_connected--; -- 2.11.4.GIT