diff options
-rw-r--r-- | source3/libsmb/async_smb.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/libsmb/async_smb.c b/source3/libsmb/async_smb.c index efeb328dd9..dce1b74f88 100644 --- a/source3/libsmb/async_smb.c +++ b/source3/libsmb/async_smb.c @@ -287,6 +287,14 @@ static void cli_state_notify_pending(struct cli_state *cli, NTSTATUS status) req = cli->conn.pending[0]; state = tevent_req_data(req, struct cli_smb_state); + if (NT_STATUS_EQUAL(status, NT_STATUS_PIPE_BROKEN)) { + /* + * We're dead. No point waiting for trans2 + * replies. + */ + state->mid = 0; + } + cli_smb_req_unset_pending(req); /* |