summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/process.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 177cb3cc505..7c45a648b77 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -1969,7 +1969,14 @@ static void process_smb(struct smbXsrv_connection *xconn,
if (smbd_is_smb2_header(inbuf, nread)) {
const uint8_t *inpdu = inbuf + NBT_HDR_SIZE;
size_t pdulen = nread - NBT_HDR_SIZE;
- smbd_smb2_process_negprot(xconn, 0, inpdu, pdulen);
+ NTSTATUS status = smbd_smb2_process_negprot(
+ xconn,
+ 0,
+ inpdu,
+ pdulen);
+ if (!NT_STATUS_IS_OK(status)) {
+ exit_server_cleanly("SMB2 negprot fail");
+ }
return;
}
if (nread >= smb_size && valid_smb_header(inbuf)