fs/ntfs3: Fix endian conversion in ni_fname_name

ni_fname_name called ntfs_cmp_names_cpu which assumes that the first
string is in CPU byte order and the second one in little endian.
In this case both strings are little endian so ntfs_cmp_names is the
correct function to call.

Signed-off-by: Thomas Kühnel <thomas.kuehnel@avm.de>
Reviewed-by: Nicolas Schier <n.schier@avm.de>
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
This commit is contained in:
Thomas Kühnel 2021-12-07 11:24:53 +01:00 committed by Konstantin Komarov
parent ecfbd57cf9
commit 90c1cd540c
No known key found for this signature in database
GPG Key ID: A9B0331F832407B6

View File

@ -1645,6 +1645,7 @@ struct ATTR_FILE_NAME *ni_fname_name(struct ntfs_inode *ni,
{
struct ATTRIB *attr = NULL;
struct ATTR_FILE_NAME *fname;
struct le_str *fns;
if (le)
*le = NULL;
@ -1668,7 +1669,8 @@ next:
if (uni->len != fname->name_len)
goto next;
if (ntfs_cmp_names_cpu(uni, (struct le_str *)&fname->name_len, NULL,
fns = (struct le_str *)&fname->name_len;
if (ntfs_cmp_names(uni->name, uni->len, fns->name, fns->len, NULL,
false))
goto next;