cifs: fix bad fids sent over wire
authorPaulo Alcantara <pc@cjr.nz>
Mon, 21 Mar 2022 16:08:25 +0000 (13:08 -0300)
committerSteve French <stfrench@microsoft.com>
Wed, 23 Mar 2022 20:20:14 +0000 (15:20 -0500)
commit351a59dace0e0e31795145acdec2660e3bc2a58d
treedc40b8f472dec34f31c33cf994a6c84ba5086cd8
parent8708b107604789dbb25057981919c7709828db16
cifs: fix bad fids sent over wire

The client used to partially convert the fids to le64, while storing
or sending them by using host endianness.  This broke the client on
big-endian machines.  Instead of converting them to le64, store them
as opaque integers and then avoid byteswapping when sending them over
wire.

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