[PATCH 1/7] cifs: Fix recognizing SFU symlinks

Pali Rohár posted 7 patches 2 months, 2 weeks ago
[PATCH 1/7] cifs: Fix recognizing SFU symlinks
Posted by Pali Rohár 2 months, 2 weeks ago
SFU symlinks have 8 byte prefix: "IntxLNK\1".
So check also the last 8th byte 0x01.

Signed-off-by: Pali Rohár <pali@kernel.org>
---
 fs/smb/client/inode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/smb/client/inode.c b/fs/smb/client/inode.c
index 73e2e6c230b7..7d424e769a56 100644
--- a/fs/smb/client/inode.c
+++ b/fs/smb/client/inode.c
@@ -612,7 +612,7 @@ cifs_sfu_type(struct cifs_fattr *fattr, const char *path,
 			cifs_dbg(FYI, "Socket\n");
 			fattr->cf_mode |= S_IFSOCK;
 			fattr->cf_dtype = DT_SOCK;
-		} else if (memcmp("IntxLNK", pbuf, 7) == 0) {
+		} else if (memcmp("IntxLNK\1", pbuf, 8) == 0) {
 			cifs_dbg(FYI, "Symlink\n");
 			fattr->cf_mode |= S_IFLNK;
 			fattr->cf_dtype = DT_LNK;
-- 
2.20.1

Re: [PATCH 1/7] cifs: Fix recognizing SFU symlinks
Posted by Pali Rohár 2 months, 2 weeks ago
On Thursday 12 September 2024 14:05:42 Pali Rohár wrote:
> SFU symlinks have 8 byte prefix: "IntxLNK\1".
> So check also the last 8th byte 0x01.
> 
> Signed-off-by: Pali Rohár <pali@kernel.org>

Fixes: 9e294f1c4d4a ("[CIFS] Recognize properly symlinks and char/blk devices (not just FIFOs) created by SFU (part 2 of 2).")

(I located commit which probably by mistake removed that byte 0x01).

> ---
>  fs/smb/client/inode.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/smb/client/inode.c b/fs/smb/client/inode.c
> index 73e2e6c230b7..7d424e769a56 100644
> --- a/fs/smb/client/inode.c
> +++ b/fs/smb/client/inode.c
> @@ -612,7 +612,7 @@ cifs_sfu_type(struct cifs_fattr *fattr, const char *path,
>  			cifs_dbg(FYI, "Socket\n");
>  			fattr->cf_mode |= S_IFSOCK;
>  			fattr->cf_dtype = DT_SOCK;
> -		} else if (memcmp("IntxLNK", pbuf, 7) == 0) {
> +		} else if (memcmp("IntxLNK\1", pbuf, 8) == 0) {
>  			cifs_dbg(FYI, "Symlink\n");
>  			fattr->cf_mode |= S_IFLNK;
>  			fattr->cf_dtype = DT_LNK;
> -- 
> 2.20.1
>