iPXE
|
EFI autoexec script. More...
#include <string.h>
#include <errno.h>
#include <ipxe/timer.h>
#include <ipxe/image.h>
#include <ipxe/netdevice.h>
#include <ipxe/uri.h>
#include <ipxe/efi/efi.h>
#include <ipxe/efi/efi_utils.h>
#include <ipxe/efi/efi_autoexec.h>
#include <ipxe/efi/mnpnet.h>
#include <usr/imgmgmt.h>
#include <usr/sync.h>
Go to the source code of this file.
Data Structures | |
struct | efi_autoexec_loader |
An EFI autoexec script loader. More... | |
Macros | |
#define | EFI_AUTOEXEC_TIMEOUT ( 30 * TICKS_PER_SEC ) |
Timeout for autoexec script downloads. More... | |
#define | EFI_AUTOEXEC_SYNC_TIMEOUT ( 1 * TICKS_PER_SEC ) |
Timeout for autoexec pending operation completion. More... | |
#define | EFI_AUTOEXEC_NAME "autoexec.ipxe" |
Autoexec script image name. More... | |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
static int | efi_autoexec_filesystem (EFI_HANDLE handle, struct image **image) |
Load autoexec script from filesystem. More... | |
static int | efi_autoexec_network (EFI_HANDLE handle, struct image **image) |
Load autoexec script via temporary network device. More... | |
int | efi_autoexec_load (void) |
Load autoexec script. More... | |
Variables | |
static struct efi_autoexec_loader | efi_autoexec_loaders [] |
Autoexec script loaders. More... | |
EFI autoexec script.
Definition in file efi_autoexec.c.
#define EFI_AUTOEXEC_TIMEOUT ( 30 * TICKS_PER_SEC ) |
Timeout for autoexec script downloads.
Definition at line 46 of file efi_autoexec.c.
#define EFI_AUTOEXEC_SYNC_TIMEOUT ( 1 * TICKS_PER_SEC ) |
Timeout for autoexec pending operation completion.
Definition at line 49 of file efi_autoexec.c.
#define EFI_AUTOEXEC_NAME "autoexec.ipxe" |
Autoexec script image name.
Definition at line 52 of file efi_autoexec.c.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
|
static |
Load autoexec script from filesystem.
handle | Simple filesystem protocol handle |
image | Image to fill in |
rc | Return status code |
Definition at line 75 of file efi_autoexec.c.
References DBGC, EFI_LOADED_IMAGE_PROTOCOL::DeviceHandle, EFI_AUTOEXEC_NAME, EFI_AUTOEXEC_TIMEOUT, efi_handle_name(), efi_loaded_image, ENOTTY, handle, imgacquire(), and rc.
|
static |
Load autoexec script via temporary network device.
handle | Managed network protocol service binding handle |
image | Image to fill in |
rc | Return status code |
Definition at line 106 of file efi_autoexec.c.
References cwuri, DBGC, EFI_LOADED_IMAGE_PROTOCOL::DeviceHandle, EFI_AUTOEXEC_NAME, EFI_AUTOEXEC_SYNC_TIMEOUT, EFI_AUTOEXEC_TIMEOUT, efi_handle_name(), efi_loaded_image, ENOTTY, handle, imgacquire(), mnptemp_create(), mnptemp_destroy(), netdev, netdev_open(), rc, strerror(), and sync().
int efi_autoexec_load | ( | void | ) |
Load autoexec script.
rc | Return status code |
Definition at line 168 of file efi_autoexec.c.
References DBGC, EFI_LOADED_IMAGE_PROTOCOL::DeviceHandle, efi_autoexec_loaders, efi_guid_ntoa(), efi_handle_name(), efi_loaded_image, efi_locate_device(), ENOENT, handle, image::len, efi_autoexec_loader::load, image::name, efi_autoexec_loader::protocol, rc, strerror(), and unregister_image().
Referenced by efi_probe().
|
static |
Autoexec script loaders.
Definition at line 152 of file efi_autoexec.c.
Referenced by efi_autoexec_load().