diff options
author | Volker Lendecke <vl@samba.org> | 2008-09-12 21:19:37 +0200 |
---|---|---|
committer | Volker Lendecke <vl@samba.org> | 2008-09-12 21:42:34 +0200 |
commit | 8b81b85200b7ca18cf81fdbbc3254d8578b35f43 (patch) | |
tree | bf788c31a381f2a4424644be10f1d692a46c6dec | |
parent | 768aa82361a2c4b0aab71433b7593723a2868f0a (diff) | |
download | samba-8b81b85200b7ca18cf81fdbbc3254d8578b35f43.tar.gz |
Add a paranoia check on incoming PDUs
-rw-r--r-- | source/libsmb/async_smb.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/libsmb/async_smb.c b/source/libsmb/async_smb.c index eedc7d4481d..b4d93ff9685 100644 --- a/source/libsmb/async_smb.c +++ b/source/libsmb/async_smb.c @@ -759,6 +759,13 @@ static void handle_incoming_pdu(struct cli_state *cli) } + if ((IVAL(pdu, 4) != 0x424d53ff) /* 0xFF"SMB" */ + && (IVAL(pdu, 4) != 0x424d45ff)) /* 0xFF"EMB" */ { + DEBUG(10, ("Got non-SMB PDU\n")); + status = NT_STATUS_INVALID_NETWORK_RESPONSE; + goto invalidate_requests; + } + /* * TODO: Handle oplock break requests */ |