ubifs: Make r5 hash binary string aware
As of now all filenames known by UBIFS are strings with a NUL terminator. With encrypted filenames a filename can be any binary string and the r5 function cannot search for the NUL terminator. UBIFS always knows how long a filename is, therefore we can change the hash function to iterate over the filename length to work correctly with binary strings. Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
Родитель
304790c038
Коммит
b9bc8c7bdb
|
@ -69,7 +69,7 @@ static inline uint32_t key_r5_hash(const char *s, int len)
|
|||
uint32_t a = 0;
|
||||
const signed char *str = (const signed char *)s;
|
||||
|
||||
while (*str) {
|
||||
while (len--) {
|
||||
a += *str << 4;
|
||||
a += *str >> 4;
|
||||
a *= 11;
|
||||
|
|
Загрузка…
Ссылка в новой задаче