Defines | |
#define | DHCP6_OPT_REQUEST_OPTION 6 |
#define | DHCP6_OPT_VENDOR_INFO 17 |
#define | DHCP6_OPT_DNS_SERVERS 23 |
#define | DHCP6_OPT_BOOT_FILE_URL 59 |
#define | DHCP6_OPT_BOOT_FILE_PARA 60 |
#define | ISCSI_ROOT_PATH_ID "iscsi:" |
#define | ISCSI_ROOT_PATH_FIELD_DELIMITER ':' |
#define | ISCSI_ROOT_PATH_ADDR_START_DELIMITER '[' |
#define | ISCSI_ROOT_PATH_ADDR_END_DELIMITER ']' |
Functions | |
EFI_STATUS | IScsiDhcp6ExtractRootPath (IN CHAR8 *RootPath, IN UINT16 Length, IN OUT ISCSI_ATTEMPT_CONFIG_NVDATA *ConfigData) |
EFI_STATUS | IScsiDoDhcp6 (IN EFI_HANDLE Image, IN EFI_HANDLE Controller, IN OUT ISCSI_ATTEMPT_CONFIG_NVDATA *ConfigData) |
Copyright (c) 2004 - 2012, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define DHCP6_OPT_BOOT_FILE_PARA 60 |
Referenced by IScsiDhcp6ParseReply(), and IScsiDoDhcp6().
#define DHCP6_OPT_BOOT_FILE_URL 59 |
Assigned by IANA, RFC 5970
Referenced by IScsiDhcp6ParseReply(), and IScsiDoDhcp6().
#define DHCP6_OPT_DNS_SERVERS 23 |
Referenced by IScsiDhcp6ParseReply(), and IScsiDoDhcp6().
#define DHCP6_OPT_REQUEST_OPTION 6 |
Referenced by IScsiDoDhcp6().
#define DHCP6_OPT_VENDOR_INFO 17 |
#define ISCSI_ROOT_PATH_ADDR_END_DELIMITER ']' |
Referenced by IScsiDhcp6ExtractRootPath().
#define ISCSI_ROOT_PATH_ADDR_START_DELIMITER '[' |
Referenced by IScsiDhcp6ExtractRootPath().
#define ISCSI_ROOT_PATH_FIELD_DELIMITER ':' |
#define ISCSI_ROOT_PATH_ID "iscsi:" |
EFI_STATUS IScsiDhcp6ExtractRootPath | ( | IN CHAR8 * | RootPath, | |
IN UINT16 | Length, | |||
IN OUT ISCSI_ATTEMPT_CONFIG_NVDATA * | ConfigData | |||
) |
Extract the Root Path option and get the required target information from Boot File Uniform Resource Locator (URL) Option.
[in] | RootPath | The RootPath string. |
[in] | Length | Length of the RootPath option payload. |
[in,out] | ConfigData | The iSCSI session configuration data read from nonvolatile device. |
EFI_SUCCESS | All required information is extracted from the RootPath option. | |
EFI_NOT_FOUND | The RootPath is not an iSCSI RootPath. | |
EFI_OUT_OF_RESOURCES | Failed to allocate memory. | |
EFI_INVALID_PARAMETER | The RootPath is malformatted. |
References _ISCSI_SESSION_CONFIG_NVDATA::BootLun, IP_MODE_AUTOCONFIG, _ISCSI_SESSION_CONFIG_NVDATA::IpMode, IpMode, ISCSI_NAME_MAX_SIZE, ISCSI_ROOT_PATH_ADDR_END_DELIMITER, ISCSI_ROOT_PATH_ADDR_START_DELIMITER, ISCSI_ROOT_PATH_FIELD_DELIMITER, ISCSI_ROOT_PATH_ID, ISCSI_WELL_KNOWN_PORT, IScsiAsciiStrToIp(), IScsiAsciiStrToLun(), IScsiNormalizeName(), _ISCSI_ROOT_PATH_FIELD::Len, RP_FIELD_IDX_LUN, RP_FIELD_IDX_MAX, RP_FIELD_IDX_PORT, RP_FIELD_IDX_PROTOCOL, RP_FIELD_IDX_SERVERNAME, RP_FIELD_IDX_TARGETNAME, _ISCSI_ROOT_PATH_FIELD::Str, _ISCSI_SESSION_CONFIG_NVDATA::TargetIp, _ISCSI_SESSION_CONFIG_NVDATA::TargetName, and _ISCSI_SESSION_CONFIG_NVDATA::TargetPort.
Referenced by IScsiDhcp6ParseReply().
EFI_STATUS IScsiDoDhcp6 | ( | IN EFI_HANDLE | Image, | |
IN EFI_HANDLE | Controller, | |||
IN OUT ISCSI_ATTEMPT_CONFIG_NVDATA * | ConfigData | |||
) |
Parse the DHCP ACK to get the address configuration and DNS information.
[in] | Image | The handle of the driver image. |
[in] | Controller | The handle of the controller; |
[in,out] | ConfigData | The attempt configuration data. |
EFI_SUCCESS | The DNS information is got from the DHCP ACK. | |
EFI_NO_MAPPING | DHCP failed to acquire address and other information. | |
EFI_INVALID_PARAMETER | The DHCP ACK's DNS option is malformatted. | |
EFI_DEVICE_ERROR | Some unexpected error happened. | |
EFI_OUT_OF_RESOURCES | There is no sufficient resource to finish the operation. | |
EFI_NO_MEDIA | There was a media error. |
[in] | Image | The handle of the driver image. |
[in] | Controller | The handle of the controller; |
[in,out] | ConfigData | The attempt configuration data. |
EFI_SUCCESS | The DNS information is got from the DHCP ACK. | |
EFI_NO_MAPPING | DHCP failed to acquire address and other information. | |
EFI_INVALID_PARAMETER | The DHCP ACK's DNS option is malformatted. | |
EFI_DEVICE_ERROR | Some unexpected error occurred. | |
EFI_OUT_OF_RESOURCES | There is no sufficient resource to finish the operation. | |
EFI_NO_MEDIA | There was a media error. |
References DHCP6_OPT_BOOT_FILE_PARA, DHCP6_OPT_BOOT_FILE_URL, DHCP6_OPT_DNS_SERVERS, DHCP6_OPT_REQUEST_OPTION, ISCSI_GET_MAPPING_TIMEOUT, and IScsiDhcp6ParseReply().
Referenced by IScsiGetConfigData().