1. Fix a bug in PXE driver that the PXE boot do not restart if a new boot option on the different IP stack is selected.
2. Retrieve the IP information after iSCSI TCPv6 connection established and fill it into iBFT table. 3. Generate a random IAID for each NIC port to require different IPv6 address in PXE driver. 4. Update function EfiMtftp6Configure() and Mtftp6RrqHandleOack() to allocate at most one UdpIo. 5. Fix a typo from “destory” to “destroy” in network code. Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Reviewed-by: Ouyang Qian <qian.ouyang@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13859 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
/** @file
|
||||
The driver binding and service binding protocol for IP4 driver.
|
||||
|
||||
Copyright (c) 2005 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2005 - 2012, 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
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
@@ -118,7 +118,7 @@ Ip4DriverBindingSupported (
|
||||
Clean up a IP4 service binding instance. It will release all
|
||||
the resource allocated by the instance. The instance may be
|
||||
partly initialized, or partly destroyed. If a resource is
|
||||
destroyed, it is marked as that in case the destory failed and
|
||||
destroyed, it is marked as that in case the destroy failed and
|
||||
being called again later.
|
||||
|
||||
@param[in] IpSb The IP4 serviceing binding instance to clean up
|
||||
@@ -176,7 +176,7 @@ Ip4CreateService (
|
||||
IpSb->ServiceBinding.CreateChild = Ip4ServiceBindingCreateChild;
|
||||
IpSb->ServiceBinding.DestroyChild = Ip4ServiceBindingDestroyChild;
|
||||
IpSb->State = IP4_SERVICE_UNSTARTED;
|
||||
IpSb->InDestory = FALSE;
|
||||
IpSb->InDestroy = FALSE;
|
||||
|
||||
IpSb->NumChildren = 0;
|
||||
InitializeListHead (&IpSb->Children);
|
||||
@@ -315,7 +315,7 @@ ON_ERROR:
|
||||
Clean up a IP4 service binding instance. It will release all
|
||||
the resource allocated by the instance. The instance may be
|
||||
partly initialized, or partly destroyed. If a resource is
|
||||
destroyed, it is marked as that in case the destory failed and
|
||||
destroyed, it is marked as that in case the destroy failed and
|
||||
being called again later.
|
||||
|
||||
@param[in] IpSb The IP4 serviceing binding instance to clean up
|
||||
@@ -581,7 +581,7 @@ Ip4DriverBindingStop (
|
||||
|
||||
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
|
||||
|
||||
if (IpSb->Ip4Config != NULL && (IpSb->State != IP4_SERVICE_DESTORY)) {
|
||||
if (IpSb->Ip4Config != NULL && (IpSb->State != IP4_SERVICE_DESTROY)) {
|
||||
|
||||
IpSb->Ip4Config->Stop (IpSb->Ip4Config);
|
||||
|
||||
@@ -651,7 +651,7 @@ Ip4DriverBindingStop (
|
||||
|
||||
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
|
||||
|
||||
if (IpSb->InDestory) {
|
||||
if (IpSb->InDestroy) {
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
@@ -668,10 +668,10 @@ Ip4DriverBindingStop (
|
||||
goto ON_ERROR;
|
||||
}
|
||||
|
||||
IpSb->InDestory = TRUE;
|
||||
IpSb->InDestroy = TRUE;
|
||||
|
||||
State = IpSb->State;
|
||||
IpSb->State = IP4_SERVICE_DESTORY;
|
||||
IpSb->State = IP4_SERVICE_DESTROY;
|
||||
|
||||
//
|
||||
// Clear the variable data.
|
||||
@@ -696,10 +696,10 @@ Ip4DriverBindingStop (
|
||||
|
||||
FreePool (IpSb);
|
||||
} else if (NumberOfChildren == 0) {
|
||||
IpSb->InDestory = TRUE;
|
||||
IpSb->InDestroy = TRUE;
|
||||
|
||||
State = IpSb->State;
|
||||
IpSb->State = IP4_SERVICE_DESTORY;
|
||||
IpSb->State = IP4_SERVICE_DESTROY;
|
||||
|
||||
//
|
||||
// Clear the variable data.
|
||||
@@ -912,18 +912,18 @@ Ip4ServiceBindingDestroyChild (
|
||||
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
|
||||
|
||||
//
|
||||
// A child can be destoried more than once. For example,
|
||||
// Ip4DriverBindingStop will destory all of its children.
|
||||
// when UDP driver is being stopped, it will destory all
|
||||
// A child can be destroyed more than once. For example,
|
||||
// Ip4DriverBindingStop will destroy all of its children.
|
||||
// when UDP driver is being stopped, it will destroy all
|
||||
// the IP child it opens.
|
||||
//
|
||||
if (IpInstance->State == IP4_STATE_DESTORY) {
|
||||
if (IpInstance->State == IP4_STATE_DESTROY) {
|
||||
gBS->RestoreTPL (OldTpl);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
State = IpInstance->State;
|
||||
IpInstance->State = IP4_STATE_DESTORY;
|
||||
IpInstance->State = IP4_STATE_DESTROY;
|
||||
|
||||
//
|
||||
// Close the Managed Network protocol.
|
||||
|
Reference in New Issue
Block a user