u-boot/lib/efi_loader
Stefan Sørensen 1ef1cf1f93 efi_loader: loosen buffer parameter check in efi_file_read
When reading a directory, EFI_BUFFER_TOO_SMALL should be returned when
the supplied buffer is too small, so a use-case is to call
efi_file_read with *buffer_size=0 and buffer=NULL to obtain the needed
size before doing the actual read.

So move the buffer!=NULL check to after the buffer size has been checked.

This fix allows the Redhat shim fallback to run and e.g. Fedora 32 now
boots out of the box.

Signed-off-by: Stefan Sørensen <stefan.sorensen@spectralink.com>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2020-07-22 12:32:41 +02:00
..
.gitignore efi_loader: git ignore helloworld_efi.S 2020-01-07 18:08:20 +01:00
efi_acpi.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
efi_bootmgr.c efi_loader: simplify boot manager 2020-07-11 23:14:17 +02:00
efi_boottime.c efi_loader: fix efi_get_child_controllers() 2020-07-11 23:14:16 +02:00
efi_console.c efi_loader: comments EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL 2020-06-05 04:04:41 +02:00
efi_device_path.c efi_loader: device path for SATA devices 2020-05-21 10:00:17 +02:00
efi_device_path_to_text.c efi_loader: device path for SATA devices 2020-05-21 10:00:17 +02:00
efi_device_path_utilities.c SPDX: Convert a few files that were missed before 2018-05-10 20:38:35 -04:00
efi_disk.c efi_loader: check device path is not installed twice 2020-05-21 10:00:17 +02:00
efi_file.c efi_loader: loosen buffer parameter check in efi_file_read 2020-07-22 12:32:41 +02:00
efi_freestanding.c efi_loader: fix freestanding memmove() 2020-03-22 11:06:23 +01:00
efi_gop.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
efi_hii.c efi_loader: ListPackageLists() return EFI_NOT_FOUND 2019-06-20 22:26:19 +00:00
efi_hii_config.c efi_loader: debug output for HII protocols 2019-02-13 09:40:06 +01:00
efi_image_loader.c efi_loader: wrong printf format in efi_image_parse 2020-07-11 23:14:16 +02:00
efi_load_initrd.c efi_loader: Implement FileLoad2 for initramfs loading 2020-02-28 19:37:14 +01:00
efi_memory.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
efi_net.c common: Drop net.h from common header 2020-05-18 17:33:31 -04:00
efi_rng.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
efi_root_node.c efi_rng_protocol: Install the efi_rng_protocol on the root node 2020-01-07 18:08:22 +01:00
efi_runtime.c efi_loader: don't use memmove() in efi_var_mem_del() 2020-07-22 12:32:41 +02:00
efi_setup.c efi_loader: OsIndicationsSupported, PlatformLangCodes 2020-07-11 23:14:16 +02:00
efi_signature.c efi_loader: image_loader: add digest-based verification for signed image 2020-07-11 23:14:15 +02:00
efi_smbios.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
efi_unicode_collation.c efi_loader: function descriptions efi_unicode_collation.c 2020-04-16 08:10:01 +02:00
efi_var_common.c efi_loader: identify PK, KEK, db, dbx correctly 2020-07-16 12:37:02 +02:00
efi_var_file.c efi_loader: pre-seed UEFI variables 2020-07-16 12:37:02 +02:00
efi_var_mem.c efi_loader: don't use memmove() in efi_var_mem_del() 2020-07-22 12:32:41 +02:00
efi_var_seed.S efi_loader: pre-seed UEFI variables 2020-07-16 12:37:02 +02:00
efi_variable.c efi_loader: pre-seed UEFI variables 2020-07-16 12:37:02 +02:00
efi_variable_tee.c efi_loader: Check for the native OP-TEE result on mm_communicate calls 2020-07-22 12:32:41 +02:00
efi_watchdog.c efi_loader: function descriptions efi_watchdog.c 2020-04-16 08:10:02 +02:00
helloworld.c efi_loader: consistent naming of protocol GUIDs 2019-04-23 00:37:27 +02:00
Kconfig efi_loader: pre-seed UEFI variables 2020-07-16 12:37:02 +02:00
Makefile efi_loader: pre-seed UEFI variables 2020-07-16 12:37:02 +02:00