NetworkPkg: Add URI configuration form to HTTP boot driver.
This patch updates the HTTP boot driver to produce a setup page for the boot file URI configuration. A new boot option will be created for the manual configured URI address. This change is made to support the HTTP boot usage in home environment. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com>
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
Driver Binding functions implementation for UEFI HTTP boot.
|
||||
|
||||
Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials are licensed and made available under
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
@ -364,6 +364,14 @@ HttpBootIp4DxeDriverBindingStart (
|
||||
goto ON_ERROR;
|
||||
}
|
||||
|
||||
//
|
||||
// Initialize the HII configuration form.
|
||||
//
|
||||
Status = HttpBootConfigFormInit (Private);
|
||||
if (EFI_ERROR (Status)) {
|
||||
goto ON_ERROR;
|
||||
}
|
||||
|
||||
//
|
||||
// Install a protocol with Caller Id Guid to the NIC, this is just to build the relationship between
|
||||
// NIC handle and the private data.
|
||||
@ -508,8 +516,9 @@ HttpBootIp4DxeDriverBindingStart (
|
||||
|
||||
|
||||
ON_ERROR:
|
||||
|
||||
|
||||
HttpBootDestroyIp4Children (This, Private);
|
||||
HttpBootConfigFormUnload (Private);
|
||||
FreePool (Private);
|
||||
|
||||
return Status;
|
||||
@ -615,6 +624,11 @@ HttpBootIp4DxeDriverBindingStop (
|
||||
// Release the cached data.
|
||||
//
|
||||
HttpBootFreeCacheList (Private);
|
||||
|
||||
//
|
||||
// Unload the config form.
|
||||
//
|
||||
HttpBootConfigFormUnload (Private);
|
||||
|
||||
gBS->UninstallProtocolInterface (
|
||||
NicHandle,
|
||||
@ -822,6 +836,14 @@ HttpBootIp6DxeDriverBindingStart (
|
||||
goto ON_ERROR;
|
||||
}
|
||||
|
||||
//
|
||||
// Initialize the HII configuration form.
|
||||
//
|
||||
Status = HttpBootConfigFormInit (Private);
|
||||
if (EFI_ERROR (Status)) {
|
||||
goto ON_ERROR;
|
||||
}
|
||||
|
||||
//
|
||||
// Install a protocol with Caller Id Guid to the NIC, this is just to build the relationship between
|
||||
// NIC handle and the private data.
|
||||
@ -989,12 +1011,12 @@ HttpBootIp6DxeDriverBindingStart (
|
||||
return EFI_SUCCESS;
|
||||
|
||||
ON_ERROR:
|
||||
|
||||
HttpBootDestroyIp6Children(This, Private);
|
||||
FreePool (Private);
|
||||
|
||||
return Status;
|
||||
|
||||
HttpBootDestroyIp6Children(This, Private);
|
||||
HttpBootConfigFormUnload (Private);
|
||||
FreePool (Private);
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1096,7 +1118,12 @@ HttpBootIp6DxeDriverBindingStop (
|
||||
// Release the cached data.
|
||||
//
|
||||
HttpBootFreeCacheList (Private);
|
||||
|
||||
|
||||
//
|
||||
// Unload the config form.
|
||||
//
|
||||
HttpBootConfigFormUnload (Private);
|
||||
|
||||
gBS->UninstallProtocolInterface (
|
||||
NicHandle,
|
||||
&gEfiCallerIdGuid,
|
||||
@ -1128,6 +1155,7 @@ HttpBootDxeDriverEntryPoint (
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
|
||||
//
|
||||
// Install UEFI Driver Model protocol(s).
|
||||
//
|
||||
|
Reference in New Issue
Block a user