diff options
author | Volker Lendecke <vl@samba.org> | 2013-08-27 09:40:19 +0000 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2013-09-18 10:41:22 +0200 |
commit | d3d9a2fcbe32849e0a2f56160ff2492b2c1e00f7 (patch) | |
tree | 969d822fcec4bd1d19729977e4356d830cc56deb /source3 | |
parent | ee90cc9d0f92dbcc5f54ddff2834092e2b255eab (diff) | |
download | samba-d3d9a2fcbe32849e0a2f56160ff2492b2c1e00f7.tar.gz |
smbd: Correctly return INFO_LENGTH_MISMATCH for smb1
This is required if the client offered less buffer than the fixed portion
of the info level data requires
Bug: https://bugzilla.samba.org/show_bug.cgi?id=10106
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
(cherry picked from commit 1b1935b876a14154ef74e447bf53eb7cd0a5dde9)
(cherry picked from commit 41a7d66a399c3e1ad999dce5d14570d60c4d53d2)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/smbd/trans2.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 3c8c06fa982..26b65234e43 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -5493,6 +5493,10 @@ total_data=%u (should be %u)\n", (unsigned int)total_data, (unsigned int)IVAL(pd reply_nterror(req, status); return; } + if (fixed_portion > max_data_bytes) { + reply_nterror(req, NT_STATUS_INFO_LENGTH_MISMATCH); + return; + } send_trans2_replies(conn, req, params, param_size, *ppdata, data_size, max_data_bytes); |