diff options
| author | Pali Rohár <[email protected]> | 2024-12-25 23:43:22 +0000 |
|---|---|---|
| committer | Steve French <[email protected]> | 2025-07-27 22:43:08 +0000 |
| commit | 309c2b776c8716d4e3b98506bde3ccd131f2fae6 (patch) | |
| tree | 623208d454c6d072677258baddbef82e327aaec8 /drivers/usb/cdns3/cdns3-ti.c | |
| parent | cifs: Do not query WSL EAs for native SMB symlink (diff) | |
| download | kernel-309c2b776c8716d4e3b98506bde3ccd131f2fae6.tar.gz kernel-309c2b776c8716d4e3b98506bde3ccd131f2fae6.zip | |
cifs: Add support for creating reparse points over SMB1
SMB1 already supports querying reparse points and detecting types of
symlink, fifo, socket, block and char.
This change implements the missing part - ability to create a new reparse
points over SMB1. This includes everything which SMB2+ already supports:
- native SMB symlinks and sockets
- NFS style of special files (symlinks, fifos, sockets, char/block devs)
- WSL style of special files (symlinks, fifos, sockets, char/block devs)
Attaching a reparse point to an existing file or directory is done via
SMB1 SMB_COM_NT_TRANSACT/NT_TRANSACT_IOCTL/FSCTL_SET_REPARSE_POINT command
and implemented in a new cifs_create_reparse_inode() function.
This change introduce a new callback ->create_reparse_inode() which creates
a new reperse point file or directory and returns inode. For SMB1 it is
provided via that new cifs_create_reparse_inode() function.
Existing reparse.c code was only slightly updated to call new protocol
callback ->create_reparse_inode() instead of hardcoded SMB2+ function.
This make the whole reparse.c code to work with every SMB dialect.
The original callback ->create_reparse_symlink() is not needed anymore as
the implementation of new create_reparse_symlink() function is dialect
agnostic too. So the link.c code was updated to call that function directly
(and not via callback).
Signed-off-by: Pali Rohár <[email protected]>
Signed-off-by: Steve French <[email protected]>
Diffstat (limited to 'drivers/usb/cdns3/cdns3-ti.c')
0 files changed, 0 insertions, 0 deletions
