diff options
author | Paulo Alcantara (SUSE) <pc@cjr.nz> | 2020-02-20 23:49:35 +0100 |
---|---|---|
committer | Steve French <stfrench@microsoft.com> | 2020-02-24 21:20:38 +0100 |
commit | 154255233830e1e4dd0d99ac929a5dce588c0b81 (patch) | |
tree | 719128f79d04751293c8786f0585c4f9b8e2adf7 | |
parent | cifs: don't leak -EAGAIN for stat() during reconnect (diff) | |
download | linux-154255233830e1e4dd0d99ac929a5dce588c0b81.tar.xz linux-154255233830e1e4dd0d99ac929a5dce588c0b81.zip |
cifs: fix potential mismatch of UNC paths
Ensure that full_path is an UNC path that contains '\\' as delimiter,
which is required by cifs_build_devname().
The build_path_from_dentry_optional_prefix() function may return a
path with '/' as delimiter when using SMB1 UNIX extensions, for
example.
Signed-off-by: Paulo Alcantara (SUSE) <pc@cjr.nz>
Signed-off-by: Steve French <stfrench@microsoft.com>
Acked-by: Ronnie Sahlberg <lsahlber@redhat.com>
-rw-r--r-- | fs/cifs/cifs_dfs_ref.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cifs/cifs_dfs_ref.c b/fs/cifs/cifs_dfs_ref.c index 606f26d862dc..cc3ada12848d 100644 --- a/fs/cifs/cifs_dfs_ref.c +++ b/fs/cifs/cifs_dfs_ref.c @@ -324,6 +324,8 @@ static struct vfsmount *cifs_dfs_do_automount(struct dentry *mntpt) if (full_path == NULL) goto cdda_exit; + convert_delimiter(full_path, '\\'); + cifs_dbg(FYI, "%s: full_path: %s\n", __func__, full_path); if (!cifs_sb_master_tlink(cifs_sb)) { |