• Paulo Alcantara's avatar
    smb: client: set correct file type from NFS reparse points · 45e72402
    Paulo Alcantara authored
    Handle all file types in NFS reparse points as specified in MS-FSCC
    2.1.2.6 Network File System (NFS) Reparse Data Buffer.
    
    The client is now able to set all file types based on the parsed NFS
    reparse point, which used to support only symlinks.  This works for
    SMB1+.
    
    Before patch:
    
    $ mount.cifs //srv/share /mnt -o ...
    $ ls -l /mnt
    ls: cannot access 'block': Operation not supported
    ls: cannot access 'char': Operation not supported
    ls: cannot access 'fifo': Operation not supported
    ls: cannot access 'sock': Operation not supported
    total 1
    l????????? ? ?    ?    ?            ? block
    l????????? ? ?    ?    ?            ? char
    -rwxr-xr-x 1 root root 5 Nov 18 23:22 f0
    l????????? ? ?    ?    ?            ? fifo
    l--------- 1 root root 0 Nov 18 23:23 link -> f0
    l????????? ? ?    ?    ?            ? sock
    
    After patch:
    
    $ mount.cifs //srv/share /mnt -o ...
    $ ls -l /mnt
    total 1
    brwxr-xr-x 1 root root  123,  123 Nov 18 00:34 block
    crwxr-xr-x 1 root root 1234, 1234 Nov 18 00:33 char
    -rwxr-xr-x 1 root root          5 Nov 18 23:22 f0
    prwxr-xr-x 1 root root          0 Nov 18 23:23 fifo
    lrwxr-xr-x 1 root root          0 Nov 18 23:23 link -> f0
    srwxr-xr-x 1 root root          0 Nov 19  2023 sock
    Signed-off-by: default avatarPaulo Alcantara (SUSE) <pc@manguebit.com>
    Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
    45e72402
smb2inode.c 23.4 KB