2 Define NVData structures used by the iSCSI configuration component
4 Copyright (c) 2004 - 2007, 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
8 http://opensource.org/licenses/bsd-license.php
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.
15 #ifndef _ISCSI_NVDATASTRUC_H_
16 #define _ISCSI_NVDATASTRUC_H_
18 #define ISCSI_CONFIG_GUID \
20 0x6456ed61, 0x3579, 0x41c9, { 0x8a, 0x26, 0x0a, 0x0b, 0xd6, 0x2b, 0x78, 0xfc } \
23 #define VAR_EQ_TEST_NAME 0x100
25 #define FORMID_MAIN_FORM 1
26 #define FORMID_DEVICE_FORM 2
28 #define ISCSI_NAME_MAX_SIZE 224
31 // Vfr has a limit on the size, it's 255 bytes.
33 #define ISCSI_NAME_IFR_MAX_SIZE 126
36 #define IP_MAX_SIZE 15
37 #define IP4_STR_MAX_SIZE 16
39 #define LUN_MIN_SIZE 1
40 #define LUN_MAX_SIZE 20
42 #define ISCSI_CHAP_NONE 0
43 #define ISCSI_CHAP_UNI 1
44 #define ISCSI_CHAP_MUTUAL 2
46 #define TARGET_PORT_MIN_NUM 0
47 #define TARGET_PORT_MAX_NUM 65535
49 #define DEVICE_ENTRY_LABEL 0x1234
51 #define KEY_INITIATOR_NAME 0x101
52 #define KEY_DHCP_ENABLE 0x102
53 #define KEY_LOCAL_IP 0x103
54 #define KEY_SUBNET_MASK 0x104
55 #define KEY_GATE_WAY 0x105
56 #define KEY_TARGET_IP 0x106
57 #define KEY_CHAP_NAME 0x107
58 #define KEY_CHAP_SECRET 0x108
59 #define KEY_REVERSE_CHAP_NAME 0x109
60 #define KEY_REVERSE_CHAP_SECRET 0x10a
61 #define KEY_SAVE_CHANGES 0x10b
62 #define KEY_TARGET_NAME 0x10c
63 #define KEY_BOOT_LUN 0x10d
65 #define KEY_DEVICE_ENTRY_BASE 0x1000
67 #define ISCSI_LUN_STR_MAX_LEN 21
68 #define ISCSI_CHAP_SECRET_MIN_LEN 13
69 #define ISCSI_CHAP_SECRET_MAX_LEN 17
70 #define ISCSI_CHAP_NAME_MAX_LEN 126
74 CHAR16 InitiatorName
[ISCSI_NAME_IFR_MAX_SIZE
];
78 UINT8 InitiatorInfoFromDhcp
;
79 CHAR16 LocalIp
[IP4_STR_MAX_SIZE
];
80 CHAR16 SubnetMask
[IP4_STR_MAX_SIZE
];
81 CHAR16 Gateway
[IP4_STR_MAX_SIZE
];
83 CHAR16 TargetName
[ISCSI_NAME_IFR_MAX_SIZE
];
84 CHAR16 TargetIp
[IP4_STR_MAX_SIZE
];
86 CHAR16 BootLun
[ISCSI_LUN_STR_MAX_LEN
];
87 UINT8 TargetInfoFromDhcp
;
90 CHAR16 CHAPName
[ISCSI_CHAP_NAME_MAX_LEN
];
91 CHAR16 CHAPSecret
[ISCSI_CHAP_SECRET_MAX_LEN
];
92 CHAR16 ReverseCHAPName
[ISCSI_CHAP_NAME_MAX_LEN
];
93 CHAR16 ReverseCHAPSecret
[ISCSI_CHAP_SECRET_MAX_LEN
];
94 } ISCSI_CONFIG_IFR_NVDATA
;