NetworkPkg/IScsiDxe: Add IPv6 support condition check.

Base on the request of https://bugzilla.tianocore.org/show_bug.cgi?id=710,
we provide this patch to IPv6 condition check by leveraging AIP Protocol.

Cc: Karunakar P <karunakarp@amiindia.co.in>
Cc: Ye Ting <ting.ye@intel.com>
Cc: Fu Siyuan <siyuan.fu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Karunakar P <karunakarp@amiindia.co.in>
Signed-off-by: Wu Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: Karunakar p <karunakarp@amiindia.co.in>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
This commit is contained in:
Jiaxin Wu
2017-10-17 09:48:37 +08:00
parent ed247d86c2
commit 6b08dd6eb8
7 changed files with 159 additions and 4 deletions

View File

@@ -3421,6 +3421,9 @@ IScsiFormCallback (
ISCSI_CONFIG_IFR_NVDATA OldIfrNvData;
EFI_STATUS Status;
EFI_INPUT_KEY Key;
ISCSI_NIC_INFO *NicInfo;
NicInfo = NULL;
if ((Action == EFI_BROWSER_ACTION_FORM_OPEN) || (Action == EFI_BROWSER_ACTION_FORM_CLOSE)) {
//
@@ -3591,6 +3594,21 @@ IScsiFormCallback (
case KEY_IP_MODE:
switch (Value->u8) {
case IP_MODE_IP6:
NicInfo = IScsiGetNicInfoByIndex (Private->Current->NicIndex);
if(!NicInfo->Ipv6Available) {
//
// Current NIC doesn't Support IPv6, hence use IPv4.
//
IfrNvData->IpMode = IP_MODE_IP4;
CreatePopUp (
EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,
&Key,
L"Current NIC doesn't Support IPv6!",
NULL
);
}
case IP_MODE_IP4:
ZeroMem (IfrNvData->LocalIp, sizeof (IfrNvData->LocalIp));
ZeroMem (IfrNvData->SubnetMask, sizeof (IfrNvData->SubnetMask));