]> www.infradead.org Git - users/hch/block.git/commit
cifs: mount with "unix" mount option for SMB1 incorrectly handled
authorSteve French <stfrench@microsoft.com>
Tue, 23 Jul 2024 05:44:48 +0000 (00:44 -0500)
committerSteve French <stfrench@microsoft.com>
Tue, 23 Jul 2024 22:47:46 +0000 (17:47 -0500)
commit0e314e452687ce0ec5874e42cdb993a34325d3d2
tree89bcc9932e2d5eb0c15e7e31eb344d06ccd7927f
parenta214384ce26b6111ea8c8d58fa82a1ca63996c38
cifs: mount with "unix" mount option for SMB1 incorrectly handled

Although by default we negotiate CIFS Unix Extensions for SMB1 mounts to
Samba (and they work if the user does not specify "unix" or "posix" or
"linux" on mount), and we do properly handle when a user turns them off
with "nounix" mount parm.  But with the changes to the mount API we
broke cases where the user explicitly specifies the "unix" option (or
equivalently "linux" or "posix") on mount with vers=1.0 to Samba or other
servers which support the CIFS Unix Extensions.

 "mount error(95): Operation not supported"

and logged:

 "CIFS: VFS: Check vers= mount option. SMB3.11 disabled but required for POSIX extensions"

even though CIFS Unix Extensions are supported for vers=1.0  This patch fixes
the case where the user specifies both "unix" (or equivalently "posix" or
"linux") and "vers=1.0" on mount to a server which supports the
CIFS Unix Extensions.

Cc: stable@vger.kernel.org
Reviewed-by: David Howells <dhowell@redhat.com>
Reviewed-by: Paulo Alcantara (Red Hat) <pc@manguebit.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/client/connect.c