summaryrefslogtreecommitdiffstats
path: root/NetworkPkg/HttpBootDxe/HttpBootConfigNVDataStruc.h
blob: 3afa97598be2cac4eb757a10a3df299f7236e1fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/** @file
  Define NVData structures used by the HTTP Boot configuration component.

Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent

**/

#ifndef _HTTP_BOOT_NVDATA_STRUC_H_
#define _HTTP_BOOT_NVDATA_STRUC_H_

#include <Guid/HttpBootConfigHii.h>

#define HTTP_BOOT_IP_VERSION_4       0
#define HTTP_BOOT_IP_VERSION_6       1

//
// Macros used for an IPv4 or an IPv6 address.
//
#define URI_STR_MIN_SIZE             0
#define URI_STR_MAX_SIZE             255

#define DESCRIPTION_STR_MIN_SIZE     6
#define DESCRIPTION_STR_MAX_SIZE     75

#define CONFIGURATION_VARSTORE_ID    0x1234

#define FORMID_MAIN_FORM             1

#define KEY_INITIATOR_URI            0x101

#define HTTP_BOOT_DEFAULT_DESCRIPTION_STR   L"UEFI HTTP"

#pragma pack(1)
typedef struct _HTTP_BOOT_CONFIG_IFR_NVDATA {
  UINT8     IpVersion;
  UINT8     Padding;
  CHAR16    Description[DESCRIPTION_STR_MAX_SIZE];
  CHAR16    Uri[URI_STR_MAX_SIZE];
} HTTP_BOOT_CONFIG_IFR_NVDATA;
#pragma pack()


#endif