NetworkPkg/IScsiDxe/IScsiDhcp6.h File Reference


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)

Detailed Description

The header file of iSCSI DHCP6 related configuration routines.

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 Documentation

#define DHCP6_OPT_BOOT_FILE_PARA   60

#define DHCP6_OPT_BOOT_FILE_URL   59

Assigned by IANA, RFC 5970

Referenced by IScsiDhcp6ParseReply(), and IScsiDoDhcp6().

#define DHCP6_OPT_DNS_SERVERS   23

#define DHCP6_OPT_REQUEST_OPTION   6

Referenced by IScsiDoDhcp6().

#define DHCP6_OPT_VENDOR_INFO   17

#define ISCSI_ROOT_PATH_ADDR_END_DELIMITER   ']'

#define ISCSI_ROOT_PATH_ADDR_START_DELIMITER   '['

#define ISCSI_ROOT_PATH_FIELD_DELIMITER   ':'

#define ISCSI_ROOT_PATH_ID   "iscsi:"


Function Documentation

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.

Parameters:
[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.
Return values:
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.

Parameters:
[in] Image The handle of the driver image.
[in] Controller The handle of the controller;
[in,out] ConfigData The attempt configuration data.
Return values:
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.
Parse the DHCP ACK to get the address configuration and DNS information.

Parameters:
[in] Image The handle of the driver image.
[in] Controller The handle of the controller;
[in,out] ConfigData The attempt configuration data.
Return values:
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().


Generated on Mon Sep 28 08:49:06 2015 for NetworkPkg[ALL] by  doxygen 1.5.7.1