summaryrefslogtreecommitdiffstats
path: root/NetworkPkg/HttpBootDxe/HttpBootConfigNVDataStruc.h
blob: a24fa5cb08cb9c3593f7ffc964c41a5b67eb1cf2 (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
/** @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