efi_loader: legal characters in StrToFat()
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 12 Jun 2019 19:06:28 +0000 (21:06 +0200)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Fri, 14 Jun 2019 17:18:40 +0000 (19:18 +0200)
The UEFI specification does not specify if the characters that have to be
replaced by underscore in function StrToFat() of the Unicode collation
protocol are those forbidden in FAT long names or those in FAT short names.
EDK2 and UEFI SCT assume it is those forbidden in FAT 8.3 short names.

Adjust the list of forbidden characters.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
lib/efi_loader/efi_unicode_collation.c

index 4fe23625558b5ad1e7ae1a596fe124b561de40ab..243c51a8dbe7fffaf87a8f57c0effc8bd5a81b45 100644 (file)
@@ -11,8 +11,8 @@
 #include <cp437.h>
 #include <efi_loader.h>
 
-/* Characters that may not be used in file names */
-static const char illegal[] = "<>:\"/\\|?*\x7f";
+/* Characters that may not be used in FAT 8.3 file names */
+static const char illegal[] = "+,<=>:;\"/\\|?*[]\x7f";
 
 /*
  * EDK2 assumes codepage 1250 when creating FAT 8.3 file names.