47 lines
1.2 KiB
C
47 lines
1.2 KiB
C
#ifndef _IPXE_EFI_APPLE_NET_BOOT_PROTOCOL_H
|
|
#define _IPXE_EFI_APPLE_NET_BOOT_PROTOCOL_H
|
|
|
|
/** @file
|
|
*
|
|
* Apple Net Boot Protocol
|
|
*
|
|
*/
|
|
|
|
FILE_LICENCE ( BSD3 );
|
|
|
|
#define EFI_APPLE_NET_BOOT_PROTOCOL_GUID \
|
|
{ 0x78ee99fb, 0x6a5e, 0x4186, \
|
|
{ 0x97, 0xde, 0xcd, 0x0a, 0xba, 0x34, 0x5a, 0x74 } }
|
|
|
|
typedef struct _EFI_APPLE_NET_BOOT_PROTOCOL EFI_APPLE_NET_BOOT_PROTOCOL;
|
|
|
|
/**
|
|
Get a DHCP packet obtained by the firmware during NetBoot.
|
|
|
|
@param This A pointer to the APPLE_NET_BOOT_PROTOCOL instance.
|
|
@param BufferSize A pointer to the size of the buffer in bytes.
|
|
@param DataBuffer The memory buffer to copy the packet to. If it is
|
|
NULL, then the size of the packet is returned
|
|
in BufferSize.
|
|
@retval EFI_SUCCESS The packet was copied.
|
|
@retval EFI_BUFFER_TOO_SMALL The BufferSize is too small to read the
|
|
current packet. BufferSize has been
|
|
updated with the size needed to
|
|
complete the request.
|
|
**/
|
|
typedef
|
|
EFI_STATUS
|
|
(EFIAPI *GET_DHCP_RESPONSE) (
|
|
IN EFI_APPLE_NET_BOOT_PROTOCOL *This,
|
|
IN OUT UINTN *BufferSize,
|
|
OUT VOID *DataBuffer
|
|
);
|
|
|
|
struct _EFI_APPLE_NET_BOOT_PROTOCOL
|
|
{
|
|
GET_DHCP_RESPONSE GetDhcpResponse;
|
|
GET_DHCP_RESPONSE GetBsdpResponse;
|
|
};
|
|
|
|
#endif /*_IPXE_EFI_APPLE_NET_BOOT_PROTOCOL_H */
|