Intel Extensible Firmware Interface User Manual

Page 949

Advertising
background image

32/64-Bit UNDI Specification

Version 1.10

12/01/02

E-83

// Length of packet data in bytes (not including the media
// header).

PXE_UINT32

PacketLen;

// Protocol type. This will be copied into the media header
// without doing byte swapping. Protocol type numbers can be
// obtained from the Assigned Numbers RFC 1700.

PXE_UINT16

Protocol;

// Length of the media header in bytes.

PXE_UINT16

MediaHeaderLen;

} PXE_CPB_FILL_HEADER;

#pragma pack()

#define

PXE_PROTOCOL_ETHERNET_IP

0x0800

#define

PXE_PROTOCOL_ETHERNET_ARP 0x0806

Fragmented Frame

#pragma pack(1)

typedef struct s_pxe_cpb_fill_header_fragmented {

// Source and destination MAC addresses. These will be copied
// into the media header without doing byte swapping.

PXE_MAC_ADDR

SrcAddr;

PXE_MAC_ADDR

DestAddr;

// Length of packet data in bytes (not including the media
// header).

PXE_UINT32

PacketLen;

// Protocol type. This will be copied into the media header
// without doing byte swapping. Protocol type numbers can be
// obtained from the Assigned Numbers RFC 1700.

PXE_MEDIA_PROTOCOL

Protocol;

// Length of the media header in bytes.

PXE_UINT16

MediaHeaderLen;

// Number of packet fragment descriptors.

PXE_UINT16

FragCnt;

// Reserved, must be set to zero.

PXE_UINT16

reserved;

Advertising