Efi_pxe_base_code.arp(), Arp(), Func – Intel Extensible Firmware Interface User Manual

Page 666

Advertising
background image

Extensible Firmware Interface Specification

15-60

12/01/02

Version 1.10

EFI_PXE_BASE_CODE.Arp()

Summary

Uses the ARP protocol to resolve a MAC address.

Prototype

EFI_STATUS

(EFIAPI *EFI_PXE_BASE_CODE_ARP) (

IN

EFI_PXE_BASE_CODE

*This,

IN EFI_IP_ADDRESS

*IpAddr,

IN EFI_MAC_ADDRESS

*MacAddr OPTIONAL

);

Parameters

This

Pointer to the

EFI_PXE_BASE_CODE

instance.

IpAddr

Pointer to the IP address that is used to resolve a MAC address. When
the MAC address is resolved, the

ArpCacheEntries

and

ArpCache

fields of the

EFI_PXE_BASE_CODE_MODE

structure are updated.

MacAddr

If

not

NULL

, a pointer to the MAC address that was resolved with the

ARP protocol.

Description

This function uses the ARP protocol to resolve a MAC address. The

UsingIpv6

field of the

EFI_PXE_BASE_CODE_MODE

structure is used to determine if IPv4 or IPv6 addresses are being

used. The IP address specified by

IpAddr

is used to resolve a MAC address. If the ARP protocol

succeeds in resolving the specified address, then the

ArpCacheEntries

and

ArpCache

fields

of the

EFI_PXE_BASE_CODE_MODE

structure are updated, and

EFI_SUCCESS

is returned. If

MacAddr

is not

NULL

, the resolved MAC address is placed there as well.

If the PXE Base Code protocol is in the stopped state, then

EFI_NOT_STARTED

is returned. If

the ARP protocol encounters a timeout condition while attempting to resolve an address, then

EFI_TIMEOUT

is returned. If the Callback Protocol does not return

EFI_PXE_BASE_CODE_CALLBACK_STATUS_CONTINUE

, then

EFI_ABORTED

is returned.

Status Codes Returned

EFI_SUCCESS

The IP or MAC address was resolved.

EFI_INVALID_PARAMETER

One of the parameters is not valid.

EFI_DEVICE_ERROR

The network device encountered an error during this operation.

EFI_NOT_STARTED

The PXE Base Code Protocol is in the stopped state.

EFI_TIMEOUT

The ARP Protocol encountered a timeout condition.

EFI_ABORTED

The callback function aborted the ARP Protocol.

Advertising