diff options
author | H. Peter Anvin | 2008-03-26 23:10:56 +0100 |
---|---|---|
committer | H. Peter Anvin | 2008-03-26 23:10:56 +0100 |
commit | d62e89d776095767d075a75ceffc884ed267f685 (patch) | |
tree | 83e12ddb9e620e53a6293fe6067eefbd092bcd50 /src/include | |
parent | [DHCP] Save precious packet-aligned memory by copying DHCP responses (diff) | |
download | ipxe-d62e89d776095767d075a75ceffc884ed267f685.tar.gz ipxe-d62e89d776095767d075a75ceffc884ed267f685.tar.xz ipxe-d62e89d776095767d075a75ceffc884ed267f685.zip |
[PXEXT] Add FILE_API_CHECK API function
Add FILE_API_CHECK to the PXEXT API so the NBP can query the
availability and status of the API.
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/pxe.h | 1 | ||||
-rw-r--r-- | src/include/pxe_api.h | 26 |
2 files changed, 27 insertions, 0 deletions
diff --git a/src/include/pxe.h b/src/include/pxe.h index 8b3ca14c..6d332ac7 100644 --- a/src/include/pxe.h +++ b/src/include/pxe.h @@ -64,6 +64,7 @@ union u_PXENV_ANY { struct s_PXENV_FILE_READ file_read; struct s_PXENV_GET_FILE_SIZE get_file_size; struct s_PXENV_FILE_EXEC file_exec; + struct s_PXENV_FILE_API_CHECK file_api_check; }; typedef union u_PXENV_ANY PXENV_ANY_t; diff --git a/src/include/pxe_api.h b/src/include/pxe_api.h index 53708ed4..b3d4bca8 100644 --- a/src/include/pxe_api.h +++ b/src/include/pxe_api.h @@ -1706,6 +1706,32 @@ extern PXENV_EXIT_t pxenv_file_exec ( struct s_PXENV_FILE_EXEC *file_exec ); /** @} */ /* pxenv_file_exec */ +/** @defgroup pxenv_file_api_check PXENV_FILE_API_CHECK + * + * FILE API CHECK + * + * @{ + */ + +/** PXE API function code for pxenv_file_api_check() */ +#define PXENV_FILE_API_CHECK 0x00e6 + +/** Parameter block for pxenv_file_api_check() */ +struct s_PXENV_FILE_API_CHECK { + PXENV_STATUS_t Status; /**< PXE status code */ + UINT16_t Size; /**< Size of structure */ + UINT32_t Magic; /**< Magic number */ + UINT32_t Provider; /**< Implementation identifier */ + UINT32_t APIMask; /**< Supported API functions */ + UINT32_t Flags; /**< Reserved for the future */ +} PACKED; + +typedef struct s_PXENV_FILE_API_CHECK PXENV_FILE_API_CHECK_t; + +extern PXENV_EXIT_t pxenv_file_api_check ( struct s_PXENV_FILE_API_CHECK *file_api_check ); + +/** @} */ /* pxenv_file_api_check */ + /** @} */ /* pxe_file_api */ /** @defgroup pxe_loader_api PXE Loader API |