]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Universal/Network/Ip4ConfigDxe/Ip4NvData.h
13941e1867ec92cee8a40fdbd155be48b790b419
[mirror_edk2.git] / MdeModulePkg / Universal / Network / Ip4ConfigDxe / Ip4NvData.h
1 /** @file
2 Routines used to operate the Ip4 configure variable.
3
4 Copyright (c) 2009 - 2010, Intel Corporation.<BR>
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at<BR>
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef _NIC_IP4_NV_DATA_H_
16 #define _NIC_IP4_NV_DATA_H_
17
18 #define EFI_NIC_IP4_CONFIG_NVDATA_GUID \
19 { \
20 0x9d5b53f, 0xf4b0, 0x4f59, { 0xa0, 0xb1, 0x7b, 0x57, 0xd3, 0x5c, 0xe, 0x5 } \
21 }
22
23 #define FORMID_MAIN_FORM 1
24 #define FORMID_DEVICE_FORM 2
25
26 #define KEY_ENABLE 0x100
27 #define KEY_DHCP_ENABLE 0x101
28 #define KEY_LOCAL_IP 0x102
29 #define KEY_SUBNET_MASK 0x103
30 #define KEY_GATE_WAY 0x104
31 #define KEY_SAVE_CHANGES 0x105
32
33 #define IP_MIN_SIZE 7
34 #define IP_MAX_SIZE 15
35 #define IP4_STR_MAX_SIZE 16
36
37 ///
38 /// NIC_IP4_CONFIG_INFO contains the IP4 configure
39 /// parameters for that NIC. NIC_IP4_CONFIG_INFO is
40 /// of variable length.
41 ///
42 typedef struct {
43 UINT16 NicAddr[3]; ///< NIC MAC address
44 UINT8 Configure; ///< NIC configure status
45 UINT8 DhcpEnable; ///< Static or DHCP
46 CHAR16 StationAddress[IP4_STR_MAX_SIZE]; ///< IP addresses
47 CHAR16 SubnetMask[IP4_STR_MAX_SIZE]; ///< Subnet address
48 CHAR16 GatewayAddress[IP4_STR_MAX_SIZE]; ///< Gateway address
49 } IP4_CONFIG_IFR_NVDATA;
50
51 #endif
52