• Sachin Prabhu's avatar
    cifs_get_root shouldn't use path with tree name · 374402a2
    Sachin Prabhu authored
    When a server returns the optional flag SMB_SHARE_IS_IN_DFS in response
    to a tree connect, cifs_build_path_to_root() will return a pathname
    which includes the hostname. This causes problems with cifs_get_root()
    which separates each component and does a lookup for each component of
    the path which in this case will incorrectly include looking up the
    hostname component as a path component.
    
    We encountered a problem with dfs shares hosted by a Netapp. When
    connecting to nodes pointed to by the DFS share. The tree connect for
    these nodes return SMB_SHARE_IS_IN_DFS resulting failures in lookup
    in cifs_get_root().
    
    RH bz: 1373153
    The patch was tested against a Netapp simulator and by a user using an
    actual Netapp server.
    Signed-off-by: default avatarSachin Prabhu <sprabhu@redhat.com>
    Reported-by: default avatarPierguido Lambri <plambri@redhat.com>
    Reviewed-by: default avatarJeff Layton <jlayton@redhat.com>
    Signed-off-by: default avatarSteve French <smfrench@gmail.com>
    374402a2
cifsproto.h 23.5 KB