• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /** @file
2   Define NVData structures used by the HTTP Boot configuration component.
3 
4 Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
5 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
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 _HTTP_BOOT_NVDATA_STRUC_H_
16 #define _HTTP_BOOT_NVDATA_STRUC_H_
17 
18 #include <Guid/HttpBootConfigHii.h>
19 
20 #define HTTP_BOOT_IP_VERSION_4       0
21 #define HTTP_BOOT_IP_VERSION_6       1
22 
23 //
24 // Macros used for an IPv4 or an IPv6 address.
25 //
26 #define URI_STR_MIN_SIZE             0
27 #define URI_STR_MAX_SIZE             255
28 
29 #define DESCRIPTION_STR_MIN_SIZE     6
30 #define DESCRIPTION_STR_MAX_SIZE     75
31 
32 #define CONFIGURATION_VARSTORE_ID    0x1234
33 
34 #define FORMID_MAIN_FORM             1
35 
36 #define KEY_INITIATOR_URI            0x101
37 
38 #define HTTP_BOOT_DEFAULT_DESCRIPTION_STR   L"UEFI HTTP"
39 
40 #pragma pack(1)
41 typedef struct _HTTP_BOOT_CONFIG_IFR_NVDATA {
42   UINT8     IpVersion;
43   UINT8     Padding;
44   CHAR16    Description[DESCRIPTION_STR_MAX_SIZE];
45   CHAR16    Uri[URI_STR_MAX_SIZE];
46 } HTTP_BOOT_CONFIG_IFR_NVDATA;
47 #pragma pack()
48 
49 
50 #endif
51