Commit 7eacba3b authored by Eugene Korenevsky's avatar Eugene Korenevsky Committed by Steve French

cifs: alloc_path_with_tree_prefix: do not append sep. if the path is empty

alloc_path_with_tree_prefix() concatenates tree prefix and the path.
Windows CIFS client does not add separator after the tree prefix if the path
is empty. Let's do the same.

This fixes mounting DFS namespaces with names containing non-ASCII symbols.

BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=215440Signed-off-by: default avatarEugene Korenevsky <ekorenevsky@astralinux.ru>
Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
parent 74ce6135
......@@ -2587,8 +2587,13 @@ alloc_path_with_tree_prefix(__le16 **out_path, int *out_size, int *out_len,
cp = load_nls_default();
cifs_strtoUTF16(*out_path, treename, treename_len, cp);
UniStrcat(*out_path, sep);
UniStrcat(*out_path, path);
/* Do not append the separator if the path is empty */
if (path[0] != cpu_to_le16(0x0000)) {
UniStrcat(*out_path, sep);
UniStrcat(*out_path, path);
}
unload_nls(cp);
return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment