1/** @file
2  Vfr file for IP4Dxe.
3
4Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
5This program and the accompanying materials
6are licensed and made available under the terms and conditions of the BSD License
7which accompanies this distribution.  The full text of the license may be found at
8http://opensource.org/licenses/bsd-license.php
9
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13**/
14#include "Ip4NvData.h"
15
16#define EFI_NETWORK_DEVICE_CLASS  0x04
17
18formset
19  guid     = IP4_CONFIG2_NVDATA_GUID,
20  title    = STRING_TOKEN(STR_IP4_CONFIG2_FORM_TITLE),
21  help     = STRING_TOKEN(STR_IP4_CONFIG2_FORM_HELP),
22  class    = EFI_NETWORK_DEVICE_CLASS,
23  subclass = 0x03,
24
25  varstore IP4_CONFIG2_IFR_NVDATA,
26    name = IP4_CONFIG2_IFR_NVDATA,
27    guid = IP4_CONFIG2_NVDATA_GUID;
28
29  form formid = FORMID_MAIN_FORM,
30    title  = STRING_TOKEN(STR_IP4_DEVICE_FORM_TITLE);
31
32    checkbox varid = IP4_CONFIG2_IFR_NVDATA.Configure,
33            prompt = STRING_TOKEN(STR_IP4_CONFIGURE),
34            help   = STRING_TOKEN(STR_IP4_CONFIGURE),
35            flags  = INTERACTIVE,
36            key    = KEY_ENABLE,
37    endcheckbox;
38
39    suppressif ideqval IP4_CONFIG2_IFR_NVDATA.Configure == 0x00;
40
41      checkbox varid = IP4_CONFIG2_IFR_NVDATA.DhcpEnable,
42              prompt = STRING_TOKEN(STR_IP4_ENABLE_DHCP),
43              help   = STRING_TOKEN(STR_IP4_ENABLE_DHCP),
44              flags  = INTERACTIVE,
45              key    = KEY_DHCP_ENABLE,
46      endcheckbox;
47    endif;
48
49    suppressif ideqval IP4_CONFIG2_IFR_NVDATA.DhcpEnable == 0x01 OR ideqval IP4_CONFIG2_IFR_NVDATA.Configure == 0x00;
50
51      string  varid   = IP4_CONFIG2_IFR_NVDATA.StationAddress,
52              prompt  = STRING_TOKEN(STR_IP4_LOCAL_IP_ADDRESS),
53              help    = STRING_TOKEN(STR_IP4_IP_ADDRESS_HELP),
54              flags   = INTERACTIVE,
55              key     = KEY_LOCAL_IP,
56              minsize = IP_MIN_SIZE,
57              maxsize = IP_MAX_SIZE,
58      endstring;
59
60      string  varid   = IP4_CONFIG2_IFR_NVDATA.SubnetMask,
61              prompt  = STRING_TOKEN(STR_IP4_LOCAL_MASK),
62              help    = STRING_TOKEN(STR_IP4_MASK_HELP),
63              flags   = INTERACTIVE,
64              key     = KEY_SUBNET_MASK,
65              minsize = IP_MIN_SIZE,
66             maxsize = IP_MAX_SIZE,
67      endstring;
68
69      string  varid   = IP4_CONFIG2_IFR_NVDATA.GatewayAddress,
70              prompt  = STRING_TOKEN(STR_IP4_LOCAL_GATEWAY),
71              help    = STRING_TOKEN(STR_IP4_GATEWAY_HELP),
72              flags   = INTERACTIVE,
73              key     = KEY_GATE_WAY,
74              minsize = IP_MIN_SIZE,
75              maxsize = IP_MAX_SIZE,
76      endstring;
77
78      string  varid   = IP4_CONFIG2_IFR_NVDATA.DnsAddress,
79              prompt  = STRING_TOKEN(STR_IP4_LOCAL_DNS),
80              help    = STRING_TOKEN(STR_IP4_DNS_HELP),
81              flags   = INTERACTIVE,
82              key     = KEY_DNS,
83              minsize = IP_MIN_SIZE,
84              maxsize = ADDRESS_STR_MAX_SIZE,
85      endstring;
86
87    endif;
88
89    subtitle text = STRING_TOKEN(STR_NULL);
90
91    text
92      help   = STRING_TOKEN(STR_SAVE_CHANGES),
93      text   = STRING_TOKEN(STR_SAVE_CHANGES),
94      flags  = INTERACTIVE,
95      key    = KEY_SAVE_CHANGES;
96
97  endform;
98
99endformset;
100
101