FatFsUtil: Skip past entries with invalid filenames.
This commit is contained in:
parent
de9c9f2281
commit
2d8d3358c4
|
@ -615,6 +615,13 @@ static bool Unpack(const std::string path, bool is_directory, const char* name,
|
||||||
if (entry.fname[0] == '\0')
|
if (entry.fname[0] == '\0')
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
if (entry.fname[0] == '?' && entry.fname[1] == '\0' && entry.altname[0] == '\0')
|
||||||
|
{
|
||||||
|
// FATFS indicates entries that have neither a short nor a long filename this way.
|
||||||
|
// These are likely corrupted file entries so just skip them.
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
const std::string_view childname = entry.fname;
|
const std::string_view childname = entry.fname;
|
||||||
|
|
||||||
// Check for path traversal attacks.
|
// Check for path traversal attacks.
|
||||||
|
|
Loading…
Reference in New Issue