aboutsummaryrefslogtreecommitdiffstats
path: root/src/config/config_efi.c
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2016-03-14 15:23:42 +0000
committerMichael Brown <mcb30@ipxe.org>2016-03-14 21:11:01 +0000
commit9913a405ea151706770559d42e758bc2c1da8525 (patch)
tree9e984a144fabd875f31fd7c8c0e6b3763c26e089 /src/config/config_efi.c
parent75496817c2d28aef8b91fce8185814f8d39f69ab (diff)
downloadipxe-9913a405ea151706770559d42e758bc2c1da8525.tar.gz
[efi] Provide access to files stored on EFI filesystems
Provide access to local files via the "file://" URI scheme. There are three syntaxes: - An opaque URI with a relative path (e.g. "file:script.ipxe"). This will be interpreted as a path relative to the iPXE binary. - A hierarchical URI with a non-network absolute path (e.g. "file:/boot/script.ipxe"). This will be interpreted as a path relative to the root of the filesystem from which the iPXE binary was loaded. - A hierarchical URI with a network path in which the authority is a volume label (e.g. "file://bootdisk/script.ipxe"). This will be interpreted as a path relative to the root of the filesystem with the specified volume label. Note that the potentially desirable shell mappings (e.g. "fs0:" and "blk0:") are concepts internal to the UEFI shell binary, and do not seem to be exposed in any way to external executables. The old EFI_SHELL_PROTOCOL (which did provide access to these mappings) is no longer installed by current versions of the UEFI shell. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/config/config_efi.c')
-rw-r--r--src/config/config_efi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/config/config_efi.c b/src/config/config_efi.c
index 1f73dad4d..92678d12d 100644
--- a/src/config/config_efi.c
+++ b/src/config/config_efi.c
@@ -21,6 +21,7 @@
FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
+#include <config/general.h>
#include <config/console.h>
/** @file
@@ -45,3 +46,6 @@ REQUIRE_OBJECT ( efi_fbcon );
#ifdef CONSOLE_FRAMEBUFFER
REQUIRE_OBJECT ( efi_fbcon );
#endif
+#ifdef DOWNLOAD_PROTO_FILE
+REQUIRE_OBJECT ( efi_local );
+#endif