smb3: fix ksmbd bigendian bug in oplock break, and move its struct to smbfs_common
authorSteve French <stfrench@microsoft.com>
Mon, 28 Mar 2022 22:45:55 +0000 (17:45 -0500)
committerSteve French <stfrench@microsoft.com>
Thu, 31 Mar 2022 14:38:53 +0000 (09:38 -0500)
commitc7803b05f74bc3941b127f3155671e1944f632ae
tree53696839b8821fe1e87af35096aab4071709d054
parentfdf59eb548e51bce81382c39f1a5fd4cb9403b78
smb3: fix ksmbd bigendian bug in oplock break, and move its struct to smbfs_common

Fix an endian bug in ksmbd for one remaining use of
Persistent/VolatileFid that unnecessarily converted it (it is an
opaque endian field that does not need to be and should not
be converted) in oplock_break for ksmbd, and move the definitions
for the oplock and lease break protocol requests and responses
to fs/smbfs_common/smb2pdu.h

Also move a few more definitions for various protocol requests
that were duplicated (in fs/cifs/smb2pdu.h and fs/ksmbd/smb2pdu.h)
into fs/smbfs_common/smb2pdu.h including:

- various ioctls and reparse structures
- validate negotiate request and response structs
- duplicate extents structs

Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Reviewed-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/smb2pdu.h
fs/ksmbd/oplock.c
fs/ksmbd/smb2pdu.c
fs/ksmbd/smb2pdu.h
fs/smbfs_common/smb2pdu.h