Description, Status codes returned – Intel Extensible Firmware Interface User Manual
Page 631

Protocols
— Network Support
Version 1.10
12/01/02
15-25
Description
This function retrieves one packet from the receive queue of a network interface. If there are no
packets on the receive queue, then
EFI_NOT_READY
will be returned. If there is a packet on the
receive queue, and the size of the packet is smaller than
BufferSize
, then the contents of the
packet will be placed in
Buffer
, and
BufferSize
will be updated with the actual size of the
packet. In addition, if
SrcAddr
,
DestAddr
, and
Protocol
are not
NULL
, then these values
will be extracted from the media header and returned.
EFI_SUCCESS
will be returned if a packet
was successfully received. If
BufferSize
is smaller than the received packet, then the size of
the receive packet will be placed in
BufferSize
and
EFI_BUFFER_TOO_SMALL
will be
returned. If the driver has not been initialized,
EFI_DEVICE_ERROR
will be returned.
Status Codes Returned
EFI_SUCCESS
The received data was stored in
Buffer
, and
BufferSize
has been updated to the number of bytes received.
EFI_NOT_STARTED
The network interface has not been started.
EFI_NOT_READY
No packets have been received on the network interface.
EFI_BUFFER_TOO_SMALL
BufferSize
is too small for the received packets.
BufferSize
has been updated to the required size.
EFI_INVALID_PARAMETER
One or more of the parameters has an unsupported value.
EFI_DEVICE_ERROR
The command could not be sent to the network interface.
EFI_UNSUPPORTED
This function is not supported by the network interface.