summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Stormont <astormont@racktopsystems.com>2019-10-11 12:28:48 +0000
committerGordon Ross <gwr@nexenta.com>2019-10-19 12:50:07 -0400
commit541826a8134c92e67fc603ded1699287feb4cca2 (patch)
tree8075fd5c27a15731dcf285775131651bfe1df8b6
parent27f3c5a8194b190aeea38638adf95bd93e61cef1 (diff)
downloadillumos-joyent-541826a8134c92e67fc603ded1699287feb4cca2.tar.gz
11806 SMB server sends malformed responses on error
Reviewed by: Vitaliy Gusev <vgusev@racktopsystems.com> Reviewed by: Gordon Ross <Gordon.W.Ross@gmail.com> Reviewed by: Garrett D'Amore <gdamore@racktopsystems.com> Approved by: Dan McDonald <danmcd@joyent.com>
-rw-r--r--usr/src/uts/common/fs/smbsrv/smb2_dispatch.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/usr/src/uts/common/fs/smbsrv/smb2_dispatch.c b/usr/src/uts/common/fs/smbsrv/smb2_dispatch.c
index 88c4b6d600..e562eb5200 100644
--- a/usr/src/uts/common/fs/smbsrv/smb2_dispatch.c
+++ b/usr/src/uts/common/fs/smbsrv/smb2_dispatch.c
@@ -11,6 +11,7 @@
/*
* Copyright 2017 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2019 RackTop Systems.
*/
@@ -910,7 +911,7 @@ cmd_done:
cmn_err(CE_NOTE, "handler for %u returned 0x%x",
sr->smb2_cmd_code, rc);
#endif
- sr->smb2_status = NT_STATUS_INTERNAL_ERROR;
+ smb2sr_put_error(sr, NT_STATUS_INTERNAL_ERROR);
break;
case SDRC_ERROR:
/*
@@ -921,6 +922,7 @@ cmd_done:
*/
if (sr->smb2_status == 0)
sr->smb2_status = NT_STATUS_INVALID_PARAMETER;
+ smb2sr_put_error(sr, sr->smb2_status);
break;
case SDRC_DROP_VC:
disconnect = B_TRUE;