[PATCH RESEND 00/11] cifs: Various changes

From: Pali Rohár

Date: Mon Jul 06 2026 - 14:51:06 EST


This patch series contains various cifs changes which I sent year ago.
All those patches are rebased on top of the 7.2-rc2 and there is no new
change in them, just they are rebased for new code base.

I pushed these changes also into my git branch cifs:
https://git.kernel.org/pub/scm/linux/kernel/git/pali/linux.git/log/?h=cifs


Note that patch "cifs: Remove cifs_backup_query_path_info() and replace
it by cifs_query_path_info()" is removing these lines:

- move_cifs_info_to_smb2(&data->fi, fi);
- fdi = (FILE_DIRECTORY_INFO *)fi;
- si = (FILE_ID_FULL_DIR_INFO *)fi;

And I have feeling that in this old code (which is being) removed could
be a buffer overflow as it is casting between incompatible structures.
I have not spent too much time with it as the code is begin removed.
But maybe some AI tool could be able to confirm if this is some buffer
overflow or not.


Pali Rohár (11):
cifs: Fix and improve cifs_is_path_accessible() function
cifs: Remove code for querying FILE_INFO_STANDARD via
CIFSSMBQPathInfo()
cifs: Remove CIFSSMBSetPathInfoFB() fallback function
cifs: Remove cifs_backup_query_path_info() and replace it by
cifs_query_path_info()
cifs: Fix validation of EAs for WSL reparse points
cifs: Validate presence of EA $LXMOD for WSL reparse points
cifs: Check if server supports EAs before trying to set it for WSL
cifs: Extend ->set_EA() callback to allow operate on reparse point
cifs: Create native Window socket file compatible also with WSL
subsystem
cifs: Add support for parsing WSL symlinks in version 1 format
cifs: Add support for creating WSL symlinks in version 1 format

fs/smb/client/cifsglob.h | 10 +-
fs/smb/client/cifsproto.h | 1 +
fs/smb/client/cifssmb.c | 79 +++--------
fs/smb/client/fs_context.c | 11 +-
fs/smb/client/fs_context.h | 3 +-
fs/smb/client/inode.c | 98 +-------------
fs/smb/client/link.c | 3 +-
fs/smb/client/reparse.c | 267 ++++++++++++++++++++++++++++++++-----
fs/smb/client/smb1ops.c | 35 +++--
fs/smb/client/smb1proto.h | 4 +-
fs/smb/client/smb2ops.c | 6 +-
fs/smb/client/xattr.c | 3 +-
fs/smb/common/fscc.h | 5 +-
13 files changed, 306 insertions(+), 219 deletions(-)

--
2.20.1