linux-stable/fs/cifs
Steve French 68ea71d4ea smb3: workaround negprot bug in some Samba servers
[ Upstream commit 32f319183c ]

Mount can now fail to older Samba servers due to a server
bug handling padding at the end of the last negotiate
context (negotiate contexts typically are rounded up to 8
bytes by adding padding if needed). This server bug can
be avoided by switching the order of negotiate contexts,
placing a negotiate context at the end that does not
require padding (prior to the recent netname context fix
this was the case on the client).

Fixes: 73130a7b1a ("smb3: fix empty netname context on secondary channels")
Reported-by: Julian Sikorski <belegdol@gmail.com>
Tested-by: Julian Sikorski <belegdol+github@gmail.com>
Reviewed-by: Shyam Prasad N <sprasad@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-07-22 10:21:42 +02:00
..
asn1.c cifs: decoding negTokenInit with generic ASN1 decoder 2021-06-20 21:28:17 -05:00
cifs_debug.c smb3: cleanup and clarify status of tree connections 2022-03-28 17:07:30 -05:00
cifs_debug.h cifs: use SPDX-Licence-Identifier 2021-06-20 21:28:17 -05:00
cifs_dfs_ref.c cifs: support nested dfs links over reconnect 2021-11-10 16:30:13 -06:00
cifs_fs_sb.h cifs: support nested dfs links over reconnect 2021-11-10 16:30:13 -06:00
cifs_ioctl.h cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
cifs_spnego.c cifs: use the chans_need_reconnect bitmap for reconnect status 2022-01-02 20:38:46 -06:00
cifs_spnego.h cifs: use the chans_need_reconnect bitmap for reconnect status 2022-01-02 20:38:46 -06:00
cifs_spnego_negtokeninit.asn1 cifs: decoding negTokenInit with generic ASN1 decoder 2021-06-20 21:28:17 -05:00
cifs_swn.c cifs: fix potential deadlock in direct reclaim 2022-06-14 18:45:14 +02:00
cifs_swn.h cifs: simplify SWN code with dummy funcs instead of ifdefs 2021-04-25 16:28:22 -05:00
cifs_unicode.c cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
cifs_unicode.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
cifs_uniupr.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
cifsacl.c cifs: modefromsids must add an ACE for authenticated users 2022-02-14 09:55:51 -06:00
cifsacl.h cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
cifsencrypt.c cifs: fix potential deadlock in direct reclaim 2022-06-14 18:45:14 +02:00
cifsfs.c netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
cifsfs.h cifs: fix reconnect on smb3 mount types 2022-06-14 18:45:16 +02:00
cifsglob.h netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
cifspdu.h smb3: move defines for query info and query fsinfo to smbfs_common 2022-03-26 23:09:51 -05:00
cifsproto.h cifs: use a different reconnect helper for non-cifsd threads 2022-03-18 23:12:03 -05:00
cifsroot.c cifs: Standardize logging output 2020-06-01 00:10:18 -05:00
cifssmb.c 14 fixes to cifs client and to smbfs_common code 2022-04-01 14:31:57 -07:00
connect.c cifs: fix minor compile warning 2022-07-07 17:54:58 +02:00
dfs_cache.c cifs: fix potential deadlock in direct reclaim 2022-06-14 18:45:14 +02:00
dfs_cache.h cifs: support share failover when remounting 2021-07-22 11:43:23 -05:00
dir.c cifs: Support fscache indexing rewrite 2022-01-19 11:21:08 -06:00
dns_resolve.c cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
dns_resolve.h cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
export.c cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
file.c netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
fs_context.c cifs: fix ntlmssp on old servers 2022-06-09 10:29:29 +02:00
fs_context.h cifs: fix ntlmssp on old servers 2022-06-09 10:29:29 +02:00
fscache.c netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
fscache.h netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
inode.c netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
ioctl.c cifs: fix incorrect kernel doc comments 2021-09-13 18:29:46 -05:00
Kconfig cifs: Support fscache indexing rewrite 2022-01-19 11:21:08 -06:00
link.c cifs: potential buffer overflow in handling symlinks 2022-04-13 12:00:49 -05:00
Makefile cifs: Support fscache indexing rewrite 2022-01-19 11:21:08 -06:00
misc.c netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
netlink.c cifs: Constify static struct genl_ops 2021-06-20 21:28:16 -05:00
netlink.h cifs: Register generic netlink family 2020-12-14 09:16:22 -06:00
netmisc.c cifs: fix potential race with cifsd thread 2022-04-04 12:01:22 -05:00
nterr.c
nterr.h
ntlmssp.h treewide: Replace zero-length arrays with flexible-array members 2022-02-17 07:00:39 -06:00
readdir.c cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
rfc1002pdu.h cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
sess.c cifs: populate empty hostnames for extra channels 2022-06-14 18:45:16 +02:00
smb1ops.c cifs: fix potential deadlock in direct reclaim 2022-06-14 18:45:14 +02:00
smb2file.c cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
smb2glob.h smb3: move defines for ioctl protocol header and SMB2 sizes to smbfs_common 2022-03-26 23:09:20 -05:00
smb2inode.c SMB3: EBADF/EIO errors in rename/open caused by race condition in smb2_compound_op 2022-06-09 10:30:54 +02:00
smb2maperror.c cifs: Create a new shared file holding smb2 pdu definitions 2021-11-05 09:50:57 -05:00
smb2misc.c cifs: remove check of list iterator against head past the loop body 2022-04-04 12:01:22 -05:00
smb2ops.c netfs: Fix gcc-12 warning by embedding vfs inode in netfs_i_context 2022-06-22 14:28:12 +02:00
smb2pdu.c smb3: workaround negprot bug in some Samba servers 2022-07-22 10:21:42 +02:00
smb2pdu.h smb3: fix ksmbd bigendian bug in oplock break, and move its struct to smbfs_common 2022-03-31 09:38:53 -05:00
smb2proto.h cifs: convert the path to utf16 in smb2_query_info_compound 2022-03-23 15:17:22 -05:00
smb2status.h cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
smb2transport.c cifs: do not use tcpStatus after negotiate completes 2022-06-09 10:29:52 +02:00
smbdirect.c cifs: fix potential deadlock in direct reclaim 2022-06-14 18:45:14 +02:00
smbdirect.h cifs: smbd: Do not schedule work to send immediate packet on every receive 2020-04-07 12:41:16 -05:00
smbencrypt.c cifs: rename cifs_common to smbfs_common 2021-09-08 23:59:26 -05:00
smberr.h cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
trace.c
trace.h cifs: Split the smb3_add_credits tracepoint 2022-04-08 21:25:38 -05:00
transport.c cifs: fix potential deadlock in direct reclaim 2022-06-14 18:45:14 +02:00
unc.c cifs: don't cargo-cult strndup() 2021-04-25 16:28:23 -05:00
winucase.c cifs: remove pathname for file from SPDX header 2021-09-13 14:51:10 -05:00
xattr.c cifs: fix set of group SID via NTSD xattrs 2022-02-13 14:56:34 -06:00