]>
Commit | Line | Data |
---|---|---|
d1f95000 | 1 | /** @file\r |
842f5579 | 2 | EFI Network Interface Identifier Protocol\r |
d1f95000 | 3 | \r |
1c455d59 | 4 | Copyright (c) 2006 - 2009, Intel Corporation \r |
d1f95000 | 5 | All rights reserved. This program and the accompanying materials \r |
6 | are licensed and made available under the terms and conditions of the BSD License \r | |
7 | which accompanies this distribution. The full text of the license may be found at \r | |
8 | http://opensource.org/licenses/bsd-license.php \r | |
9 | \r | |
10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r | |
11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r | |
12 | \r | |
d1f95000 | 13 | \r |
14 | **/\r | |
15 | \r | |
16 | #ifndef __EFI_NETWORK_INTERFACE_IDENTIFER_H__\r | |
17 | #define __EFI_NETWORK_INTERFACE_IDENTIFER_H__\r | |
18 | \r | |
19 | \r | |
20 | #define EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_GUID \\r | |
21 | { \\r | |
22 | 0xE18541CD, 0xF755, 0x4f73, {0x92, 0x8D, 0x64, 0x3C, 0x8A, 0x79, 0xB2, 0x29 } \\r | |
23 | }\r | |
24 | \r | |
25 | #define EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_REVISION 0x00010000\r | |
26 | \r | |
99e8ed21 | 27 | ///\r |
28 | /// Revision defined in EFI1.1.\r | |
29 | /// \r | |
a6508c05 | 30 | #define EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE_REVISION EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_REVISION\r |
31 | \r | |
99e8ed21 | 32 | ///\r |
33 | /// Forward reference for pure ANSI compatability\r | |
34 | ///\r | |
d1f95000 | 35 | typedef struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL;\r |
36 | \r | |
99e8ed21 | 37 | ///\r |
38 | /// Protocol defined in EFI1.1.\r | |
39 | /// \r | |
a6508c05 | 40 | typedef EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE;\r |
41 | \r | |
44717a39 | 42 | ///\r |
43 | /// An optional protocol that is used to describe details about the software \r | |
44 | /// layer that is used to produce the Simple Network Protocol. \r | |
45 | ///\r | |
d1f95000 | 46 | struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL {\r |
1544a668 | 47 | UINT64 Revision; ///< The revision of the EFI_NETWORK_INTERFACE_IDENTIFIER protocol.\r |
1c455d59 | 48 | UINT64 Id; ///< Address of the first byte of the identifying structure for this network \r |
1544a668 | 49 | ///< interface. This is only valid when the network interface is started \r |
50 | ///< (see Start()). When the network interface is not started, this field is set to zero.\r | |
51 | UINT64 ImageAddr; ///< Address of the first byte of the identifying structure for this\r | |
52 | ///< network interface. This is set to zero if there is no structure.\r | |
53 | UINT32 ImageSize; ///< Size of unrelocated network interface image.\r | |
54 | CHAR8 StringId[4];///< A four-character ASCII string that is sent in the class identifier field of\r | |
55 | ///< option 60 in DHCP. For a Type of EfiNetworkInterfaceUndi, this field is UNDI.\r | |
56 | UINT8 Type; ///< Network interface type. This will be set to one of the values \r | |
57 | ///< in EFI_NETWORK_INTERFACE_TYPE.\r | |
58 | UINT8 MajorVer; ///< Major version number.\r | |
59 | UINT8 MinorVer; ///< Minor version number.\r | |
60 | BOOLEAN Ipv6Supported; ///< TRUE if the network interface supports IPv6; otherwise FALSE.\r | |
61 | UINT8 IfNum; ///< The network interface number that is being identified by this Network \r | |
62 | ///< Interface Identifier Protocol. This field must be less than or equal \r | |
63 | ///< to the IFcnt field in the !PXE structure.\r | |
64 | \r | |
d1f95000 | 65 | };\r |
66 | \r | |
d0a915a5 LG |
67 | ///\r |
68 | ///*******************************************************\r | |
69 | /// EFI_NETWORK_INTERFACE_TYPE\r | |
70 | ///*******************************************************\r | |
71 | ///\r | |
72 | typedef enum {\r | |
73 | EfiNetworkInterfaceUndi = 1\r | |
74 | } EFI_NETWORK_INTERFACE_TYPE;\r | |
75 | \r | |
d1f95000 | 76 | extern EFI_GUID gEfiNetworkInterfaceIdentifierProtocolGuid;\r |
77 | extern EFI_GUID gEfiNetworkInterfaceIdentifierProtocolGuid_31;\r | |
78 | \r | |
1c455d59 | 79 | #endif\r |