Testing Done: |
|
---|
11658 Some capabilities are invalid for SMB 2.002
Review Request #2281 — Created Sept. 5, 2019 and submitted
Information | |
---|---|
andy_js | |
illumos-gate | |
11658 | |
Reviewers | |
general | |
Uncovered by the Windows Protocol Test Suite: SMB2_GLOBAL_CAP_LEASING and SMB2_GLOBAL_CAP_LARGE_MTU and not valid for SMB 2.002 but we set them anyway.
These capabilities were causing an assert to trip in the Windows Protocol Test Suite code. Removing them allows the tests to pass.
-
-
usr/src/uts/common/fs/smbsrv/smb2_negotiate.c (Diff revision 1) OK, but how about introducing another macro, e.g. SMB_20_CAPS right below SMB_2X_CAPS so these are
described in the same place? (top of this file)I'd then also suggest an if/else structure like:
if (dialect < SMB_VERS_2_1) { s->srv_cap = smb2srv_capabilities & SMB_20_CAPS; } else if (dialect < SMB_VERS_3_0) { (... code as before...) } else ...