Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Extensible Firmware Interface Specification
15-74 12/01/02 Version 1.10
//*******************************************************
// EFI_BIS_VERSION predefined values
// Use these values to initialize EFI_BIS_VERSION.Major
// and to interpret results of Initialize.
//*******************************************************
#define BIS_CURRENT_VERSION_MAJOR BIS_VERSION_1
#define BIS_VERSION_1 1
These C preprocessor macros supply values for the major version number of an
EFI_BIS_VERSION. At the time of initialization, a caller supplies a value to request a BIS
interface version. On return, the (IN OUT) parameter is over-written with the actual version of the
interface.
//*******************************************************
// EFI_BIS_DATA
//
// EFI_BIS_DATA instances obtained from BIS must be freed by
// calling Free().
//*******************************************************
typedef struct _EFI_BIS_DATA {
UINT32 Length;
UINT8 *Data;
} EFI_BIS_DATA;
Length The length of the data buffer in bytes.
Data A pointer to the raw data buffer.
This type defines a structure that describes a buffer. BIS uses this type to pass back and forth most
large objects such as digital certificates, strings, etc.. Several of the BIS functions allocate a
EFI_BIS_DATA* and return it as an “out” parameter. The caller must eventually free any
allocated EFI_BIS_DATA* using the Free()
function.
Description
This function must be the first BIS function invoked by an application. It passes back a
BIS_APPLICATION_HANDLE
value that must be used in subsequent BIS functions. The handle
must be eventually destroyed by a call to the Shutdown()
function, thus ending that handle’s
lifetime. After the handle is destroyed, BIS functions may no longer be called with that handle
value. Thus all other BIS functions may only be called between a pair of Initialize()
and
Shutdown() functions.
There is no penalty for calling Initialize() multiple times. Each call passes back a distinct
handle value. Each distinct handle must be destroyed by a distinct call to Shutdown().The
lifetimes of handles created and destroyed with these functions may be overlapped in any way.