diff options
author | Michael Brown <mcb30@ipxe.org> | 2016-03-14 15:23:42 +0000 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2016-03-14 21:11:01 +0000 |
commit | 9913a405ea151706770559d42e758bc2c1da8525 (patch) | |
tree | 9e984a144fabd875f31fd7c8c0e6b3763c26e089 /src/config/config_efi.c | |
parent | 75496817c2d28aef8b91fce8185814f8d39f69ab (diff) | |
download | ipxe-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.c | 4 |
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 |