diff options
| author | Paulo Alcantara <[email protected]> | 2024-11-18 15:35:16 +0000 |
|---|---|---|
| committer | Steve French <[email protected]> | 2024-11-21 16:45:50 +0000 |
| commit | 0812340811e45ec4039d409049be53056182a552 (patch) | |
| tree | 5fd69d99e363091267f69811678d1ce8de67a9f9 /rust/helpers/task.c | |
| parent | smb: client: get rid of bounds check in SMB2_ioctl_init() (diff) | |
| download | kernel-0812340811e45ec4039d409049be53056182a552.tar.gz kernel-0812340811e45ec4039d409049be53056182a552.zip | |
smb: client: handle max length for SMB symlinks
We can't use PATH_MAX for SMB symlinks because
(1) Windows Server will fail FSCTL_SET_REPARSE_POINT with
STATUS_IO_REPARSE_DATA_INVALID when input buffer is larger than
16K, as specified in MS-FSA 2.1.5.10.37.
(2) The client won't be able to parse large SMB responses that
includes SMB symlink path within SMB2_CREATE or SMB2_IOCTL
responses.
Fix this by defining a maximum length value (4060) for SMB symlinks
that both client and server can handle.
Cc: David Howells <[email protected]>
Cc: [email protected]
Signed-off-by: Paulo Alcantara (Red Hat) <[email protected]>
Signed-off-by: Steve French <[email protected]>
Diffstat (limited to 'rust/helpers/task.c')
0 files changed, 0 insertions, 0 deletions
