lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <c0967665-343d-4ca9-90a0-a072159c1056@leemhuis.info>
Date: Fri, 2 Aug 2024 11:44:18 +0200
From: "Linux regression tracking (Thorsten Leemhuis)"
 <regressions@...mhuis.info>
To: Paulo Alcantara <pc@...guebit.com>
Cc: "linux-cifs@...r.kernel.org" <linux-cifs@...r.kernel.org>,
 LKML <linux-kernel@...r.kernel.org>,
 Linux kernel regressions list <regressions@...ts.linux.dev>,
 Steve French <sfrench@...ba.org>,
 Gleb Korobeynikov <gkorobeynikov@...ralinux.ru>
Subject: [regression] smb: client: - Failure to mount DFS namespaces without
 ASCII symbols

Hi, Thorsten here, the Linux kernel's regression tracker.

Paulo, I noticed a report about a regression in bugzilla.kernel.org that
appears to be caused by this change of yours:

3ae872de410751 ("smb: client: fix shared DFS root mounts with different
prefixes") [v6.5-rc1]

As many (most?) kernel developers don't keep an eye on the bug tracker,
I decided to write this mail. To quote from
https://bugzilla.kernel.org/show_bug.cgi?id=219083 :

>  Gleb Korobeynikov 2024-07-22 10:59:46 UTC
> 
> Windows version of SMB host: Windows Server 2022 Standard x64
> Kernel: 6.3.13(upstream)
> CONFIG_CIFS_DFS_UPCALL
> 
> In the function cifs_inval_name_dfs_link_error(), a check was added for tcon->origin_fullpath (3ae872de410751fe5e629e04da491a632d95201c). I believe it's unnecessary because when mounting a dfs name without ASCII characters, we always fail at this check and exit the function, leading to dfs namespaces not being mounted
> 
> Steps to reproduce:
> 
> 1. At Windows, create DFS namespace with name containing non-ASCII symbols (for example дфс)
> 
> 2. mount -t cifs \\\\<smb_server>\\дфс  /tmp/dfs -o domain=...,user=...,password=...
> 
> result:
> mount error(2): No such file or directory
> Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)
> 
> CIFS debug log:
> [Mon Jul 22 11:00:24 2024] CIFS: Status code returned 0xc0000033 STATUS_OBJECT_NAME_INVALID
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2maperror.c: Mapping SMB2 status code 0xc0000033 to POSIX err -2
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/dfs_cache.c: dfs_cache_noreq_update_tgthint: path: \test.local\дфс
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses_count=2
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses ipc: \\test.local\IPC$
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: cifs_put_tcon: tc_count=1
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: in cifs_put_tcon as Xid: 17 with uid: 0
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2pdu.c: Tree Disconnect
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/fscache.c: cifs_fscache_release_super_cookie: (0x0000000000000000)
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses_count=1
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses ipc: \\DC.test.local\IPC$
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: in __cifs_put_smb_ses as Xid: 18 with uid: 0
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2pdu.c: disconnect session 00000000360c6881
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses_count=1
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: __cifs_put_smb_ses: ses ipc: \\test.local\IPC$
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: in __cifs_put_smb_ses as Xid: 19 with uid: 0
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/smb2pdu.c: disconnect session 00000000db1ddbb6
> [Mon Jul 22 11:00:24 2024] CIFS: fs/smb/client/connect.c: VFS: leaving cifs_mount_put_conns (xid = 13) rc = 0
> [Mon Jul 22 11:00:24 2024] CIFS: VFS: cifs_mount failed w/return code = -2

And

>  Gleb Korobeynikov 2024-07-30 11:03:01 UTC
> 
> (In reply to Gleb Korobeynikov from comment #5)
>> (In reply to The Linux kernel's regression tracker (Thorsten Leemhuis) from
>> comment #4)
>> > Please check if 6.10 (or 6.11-rc1 once it's out on Monday) is still
>> affected
>> 
>> Alright, I will definitely check
> 
> Checked on 6.11-rc1. The reproduction issue happens identically.

See the ticket for more details.

Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)
--
Everything you wanna know about Linux kernel regression tracking:
https://linux-regtracking.leemhuis.info/about/#tldr
If I did something stupid, please tell me, as explained on that page.

[1] because bugzilla.kernel.org tells users upon registration their
"email address will never be displayed to logged out users"

P.S.: let me use this mail to also add the report to the list of tracked
regressions to ensure it's doesn't fall through the cracks:

#regzbot introduced: 3ae872de410751fe5e629e04da491a632d95201c
#regzbot title: smb: client: failure to mount DFS namespaces without
ASCII symbols
#regzbot from: Gleb Korobeynikov <gkorobeynikov@...ralinux.ru>
#regzbot duplicate: https://bugzilla.kernel.org/show_bug.cgi?id=219083
#regzbot ignore-activity

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ