3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 UEFI Arp protocol definition.
25 #include EFI_PROTOCOL_DEFINITION (ServiceBinding)
27 #define EFI_ARP_SERVICE_BINDING_PROTOCOL_GUID \
28 { 0xf44c00ee, 0x1f2c, 0x4a00, 0xaa, 0x9, 0x1c, 0x9f, 0x3e, 0x8, 0x0, 0xa3 }
30 #define EFI_ARP_PROTOCOL_GUID \
31 { 0xf4b427bb, 0xba21, 0x4f16, 0xbc, 0x4e, 0x43, 0xe4, 0x16, 0xab, 0x61, 0x9c }
33 EFI_FORWARD_DECLARATION (EFI_ARP_PROTOCOL
);
35 typedef struct _EFI_ARP_FIND_DATA
{
41 UINT8 HwAddressLength
;
42 UINT8 SwAddressLength
;
46 //****************************************************
47 // EFI_ARP_CONFIG_DATA
48 //****************************************************
49 typedef struct EFI_ARP_CONFIG_DATA
{
50 UINT16 SwAddressType
; // Host byte order
51 UINT8 SwAddressLength
;
52 VOID
*StationAddress
; // Network byte order
56 } EFI_ARP_CONFIG_DATA
;
61 (EFIAPI
*EFI_ARP_CONFIGURE
) (
62 IN EFI_ARP_PROTOCOL
*This
,
63 IN EFI_ARP_CONFIG_DATA
*ConfigData OPTIONAL
69 (EFIAPI
*EFI_ARP_ADD
) (
70 IN EFI_ARP_PROTOCOL
*This
,
72 IN VOID
*TargetSwAddress OPTIONAL
,
73 IN VOID
*TargetHwAddress OPTIONAL
,
74 IN UINT32 TimeoutValue
,
80 (EFIAPI
*EFI_ARP_FIND
) (
81 IN EFI_ARP_PROTOCOL
*This
,
82 IN BOOLEAN BySwAddress
,
83 IN VOID
*AddressBuffer OPTIONAL
,
84 OUT UINT32
*EntryLength OPTIONAL
,
85 OUT UINT32
*EntryCount OPTIONAL
,
86 OUT EFI_ARP_FIND_DATA
**Entries OPTIONAL
,
93 (EFIAPI
*EFI_ARP_DELETE
) (
94 IN EFI_ARP_PROTOCOL
*This
,
95 IN BOOLEAN BySwAddress
,
96 IN VOID
*AddressBuffer OPTIONAL
101 (EFIAPI
*EFI_ARP_FLUSH
) (
102 IN EFI_ARP_PROTOCOL
*This
107 (EFIAPI
*EFI_ARP_REQUEST
) (
108 IN EFI_ARP_PROTOCOL
*This
,
109 IN VOID
*TargetSwAddress OPTIONAL
,
110 IN EFI_EVENT ResolvedEvent OPTIONAL
,
111 OUT VOID
*TargetHwAddress
116 (EFIAPI
*EFI_ARP_CANCEL
) (
117 IN EFI_ARP_PROTOCOL
*This
,
118 IN VOID
*TargetSwAddress OPTIONAL
,
119 IN EFI_EVENT ResolvedEvent OPTIONAL
122 struct _EFI_ARP_PROTOCOL
{
123 EFI_ARP_CONFIGURE Configure
;
126 EFI_ARP_DELETE Delete
;
128 EFI_ARP_REQUEST Request
;
129 EFI_ARP_CANCEL Cancel
;
133 extern EFI_GUID gEfiArpServiceBindingProtocolGuid
;
134 extern EFI_GUID gEfiArpProtocolGuid
;