smb: client: fix mount when dns_resolver key is not available
authorPaulo Alcantara <pc@manguebit.com>
Thu, 9 Nov 2023 15:01:48 +0000 (12:01 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 28 Nov 2023 17:20:09 +0000 (17:20 +0000)
commit390c08fd3eeb3ebd0e9576de8b6eec8eae2d595d
treee494bd1755ccd865305b9ef4aacf7fae5eb85ffc
parentc1a5962f1462b64fe7b69f20a4b6af8067bc2d26
smb: client: fix mount when dns_resolver key is not available

commit 5e2fd17f434d2fed78efb123e2fc6711e4f598f1 upstream.

There was a wrong assumption that with CONFIG_CIFS_DFS_UPCALL=y there
would always be a dns_resolver key set up so we could unconditionally
upcall to resolve UNC hostname rather than using the value provided by
mount(2).

Only require it when performing automount of junctions within a DFS
share so users that don't have dns_resolver key still can mount their
regular shares with server hostname resolved by mount.cifs(8).

Fixes: 348a04a8d113 ("smb: client: get rid of dfs code dep in namespace.c")
Cc: stable@vger.kernel.org
Tested-by: Eduard Bachmakov <e.bachmakov@gmail.com>
Reported-by: Eduard Bachmakov <e.bachmakov@gmail.com>
Closes: https://lore.kernel.org/all/CADCRUiNvZuiUZ0VGZZO9HRyPyw6x92kiA7o7Q4tsX5FkZqUkKg@mail.gmail.com/
Signed-off-by: Paulo Alcantara (SUSE) <pc@manguebit.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/smb/client/dfs.c
fs/smb/client/fs_context.h
fs/smb/client/namespace.c