summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve French <stfrench@microsoft.com>2018-06-14 22:30:56 -0500
committerSteve French <stfrench@microsoft.com>2018-06-15 02:38:08 -0500
commitd819d298c7258849d56eb400be436aff3ba2aae2 (patch)
tree96fef88349ee28071238b70a3cd2b1c664510474
parent115d5d288dc3368e3d6e7eb9ee213b342f072c23 (diff)
downloadlinux-d819d298c7258849d56eb400be436aff3ba2aae2.tar.gz
linux-d819d298c7258849d56eb400be436aff3ba2aae2.tar.xz
smb3: fix corrupt path in subdirs on smb311 with posix
Signed-off-by: Steve French <stfrench@microsoft.com>
-rw-r--r--fs/cifs/smb2misc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/cifs/smb2misc.c b/fs/cifs/smb2misc.c
index 0de87ca33e2e..3ff7cec2da81 100644
--- a/fs/cifs/smb2misc.c
+++ b/fs/cifs/smb2misc.c
@@ -454,7 +454,8 @@ cifs_convert_path_to_utf16(const char *from, struct cifs_sb_info *cifs_sb)
#ifdef CONFIG_CIFS_SMB311
/* SMB311 POSIX extensions paths do not include leading slash */
else if (cifs_sb_master_tlink(cifs_sb) &&
- cifs_sb_master_tcon(cifs_sb)->posix_extensions) {
+ cifs_sb_master_tcon(cifs_sb)->posix_extensions &&
+ (from[0] == '/')) {
start_of_path = from + 1;
}
#endif /* 311 */