]> git.proxmox.com Git - mirror_edk2.git/blame - EdkCompatibilityPkg/Foundation/Efi/Protocol/Arp/Arp.h
Update the copyright notice format
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Efi / Protocol / Arp / Arp.h
CommitLineData
3eb9473e 1/*++\r
2\r
f57387d5
HT
3Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>\r
4This program and the accompanying materials \r
3eb9473e 5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13\r
14 Arp.h\r
15\r
16Abstract:\r
17\r
18 UEFI Arp protocol definition.\r
19\r
20--*/\r
21\r
22#ifndef _ARP_H_\r
23#define _ARP_H_\r
24\r
25#include EFI_PROTOCOL_DEFINITION (ServiceBinding)\r
26\r
27#define EFI_ARP_SERVICE_BINDING_PROTOCOL_GUID \\r
7ccf38a3 28 { 0xf44c00ee, 0x1f2c, 0x4a00, {0xaa, 0x9, 0x1c, 0x9f, 0x3e, 0x8, 0x0, 0xa3} }\r
3eb9473e 29\r
30#define EFI_ARP_PROTOCOL_GUID \\r
7ccf38a3 31 { 0xf4b427bb, 0xba21, 0x4f16, {0xbc, 0x4e, 0x43, 0xe4, 0x16, 0xab, 0x61, 0x9c} }\r
3eb9473e 32\r
33EFI_FORWARD_DECLARATION (EFI_ARP_PROTOCOL);\r
34\r
e41b5000 35typedef struct _EFI_ARP_FIND_DATA {\r
3eb9473e 36UINT32 Size;\r
37BOOLEAN DenyFlag;\r
38BOOLEAN StaticFlag;\r
39UINT16 HwAddressType;\r
40UINT16 SwAddressType;\r
41UINT8 HwAddressLength;\r
42UINT8 SwAddressLength;\r
e41b5000 43} EFI_ARP_FIND_DATA;\r
3eb9473e 44\r
45\r
46//****************************************************\r
47// EFI_ARP_CONFIG_DATA\r
48//****************************************************\r
49typedef struct EFI_ARP_CONFIG_DATA {\r
50 UINT16 SwAddressType; // Host byte order\r
51 UINT8 SwAddressLength;\r
52 VOID *StationAddress; // Network byte order\r
53 UINT32 EntryTimeOut;\r
54 UINT32 RetryCount;\r
55 UINT32 RetryTimeOut;\r
56} EFI_ARP_CONFIG_DATA;\r
57\r
58\r
59typedef \r
60EFI_STATUS\r
61(EFIAPI *EFI_ARP_CONFIGURE) (\r
62 IN EFI_ARP_PROTOCOL *This,\r
63 IN EFI_ARP_CONFIG_DATA *ConfigData OPTIONAL\r
64 );\r
65\r
66\r
67typedef\r
68EFI_STATUS\r
69(EFIAPI *EFI_ARP_ADD) (\r
70 IN EFI_ARP_PROTOCOL *This,\r
71 IN BOOLEAN DenyFlag,\r
72 IN VOID *TargetSwAddress OPTIONAL,\r
73 IN VOID *TargetHwAddress OPTIONAL,\r
74 IN UINT32 TimeoutValue,\r
75 IN BOOLEAN Overwrite\r
76 );\r
77\r
78typedef \r
79EFI_STATUS\r
80(EFIAPI *EFI_ARP_FIND) (\r
81 IN EFI_ARP_PROTOCOL *This,\r
82 IN BOOLEAN BySwAddress,\r
83 IN VOID *AddressBuffer OPTIONAL,\r
84 OUT UINT32 *EntryLength OPTIONAL,\r
85 OUT UINT32 *EntryCount OPTIONAL,\r
86 OUT EFI_ARP_FIND_DATA **Entries OPTIONAL,\r
87 IN BOOLEAN Refresh\r
88);\r
89\r
90\r
91typedef\r
92EFI_STATUS\r
93(EFIAPI *EFI_ARP_DELETE) (\r
94 IN EFI_ARP_PROTOCOL *This,\r
95 IN BOOLEAN BySwAddress,\r
96 IN VOID *AddressBuffer OPTIONAL\r
97 );\r
98\r
99typedef\r
100EFI_STATUS\r
101(EFIAPI *EFI_ARP_FLUSH) (\r
102 IN EFI_ARP_PROTOCOL *This\r
103 );\r
104\r
105typedef\r
106EFI_STATUS\r
107(EFIAPI *EFI_ARP_REQUEST) (\r
108 IN EFI_ARP_PROTOCOL *This, \r
109 IN VOID *TargetSwAddress OPTIONAL,\r
110 IN EFI_EVENT ResolvedEvent OPTIONAL,\r
111 OUT VOID *TargetHwAddress \r
112 );\r
113\r
114typedef\r
115EFI_STATUS\r
116(EFIAPI *EFI_ARP_CANCEL) (\r
117IN EFI_ARP_PROTOCOL *This, \r
118IN VOID *TargetSwAddress OPTIONAL,\r
119IN EFI_EVENT ResolvedEvent OPTIONAL\r
120);\r
121\r
e5bce275 122struct _EFI_ARP_PROTOCOL {\r
3eb9473e 123 EFI_ARP_CONFIGURE Configure;\r
124 EFI_ARP_ADD Add;\r
125 EFI_ARP_FIND Find;\r
126 EFI_ARP_DELETE Delete;\r
127 EFI_ARP_FLUSH Flush;\r
128 EFI_ARP_REQUEST Request;\r
129 EFI_ARP_CANCEL Cancel;\r
e5bce275 130};\r
3eb9473e 131\r
132\r
133extern EFI_GUID gEfiArpServiceBindingProtocolGuid;\r
134extern EFI_GUID gEfiArpProtocolGuid;\r
135\r
136#endif\r