summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/Network/Ip4Dxe
diff options
context:
space:
mode:
authorFu Siyuan <siyuan.fu@intel.com>2014-05-07 06:17:31 +0000
committersfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524>2014-05-07 06:17:31 +0000
commitd551cc64cdf1f943744294819220b78a60b10822 (patch)
tree2d101c7186e6cda17743a85dda99c975e3d33d01 /MdeModulePkg/Universal/Network/Ip4Dxe
parent5966402ed51c5b611bf437c812047dc9c432a47e (diff)
downloadedk2-d551cc64cdf1f943744294819220b78a60b10822.zip
edk2-d551cc64cdf1f943744294819220b78a60b10822.tar.gz
edk2-d551cc64cdf1f943744294819220b78a60b10822.tar.bz2
1. Mark the network volatile variables as deprecated in code comments and remove related code to set/get these variable.
2. Remove the GetTime() call when receiving Udp4/6 packets. Signed-off-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Ye, Ting <ting.ye@intel.com> Reviewed-by: Wu, Jiaxin <jiaxin.wu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15497 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/Network/Ip4Dxe')
-rw-r--r--MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.c150
-rw-r--r--MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.h31
-rw-r--r--MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Driver.c14
-rw-r--r--MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.c9
-rw-r--r--MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.h7
5 files changed, 5 insertions, 206 deletions
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.c b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.c
index 16b88ae..004a8bc 100644
--- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.c
+++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.c
@@ -1,6 +1,6 @@
/** @file
-Copyright (c) 2005 - 2009, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 2014, 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
@@ -267,151 +267,3 @@ Ip4NtohHead (
return Head;
}
-
-
-/**
- Set the Ip4 variable data.
-
- Save the list of all of the IPv4 addresses and subnet masks that are currently
- being used to volatile variable storage.
-
- @param[in] IpSb Ip4 service binding instance
-
- @retval EFI_SUCCESS Successfully set variable.
- @retval EFI_OUT_OF_RESOURCES There are not enough resources to set the variable.
- @retval other Set variable failed.
-
-**/
-EFI_STATUS
-Ip4SetVariableData (
- IN IP4_SERVICE *IpSb
- )
-{
- UINT32 NumConfiguredInstance;
- LIST_ENTRY *Entry;
- UINTN VariableDataSize;
- EFI_IP4_VARIABLE_DATA *Ip4VariableData;
- EFI_IP4_ADDRESS_PAIR *Ip4AddressPair;
- IP4_PROTOCOL *IpInstance;
- CHAR16 *NewMacString;
- EFI_STATUS Status;
-
- NumConfiguredInstance = 0;
-
- //
- // Go through the children list to count the configured children.
- //
- NET_LIST_FOR_EACH (Entry, &IpSb->Children) {
- IpInstance = NET_LIST_USER_STRUCT_S (Entry, IP4_PROTOCOL, Link, IP4_PROTOCOL_SIGNATURE);
-
- if (IpInstance->State == IP4_STATE_CONFIGED) {
- NumConfiguredInstance++;
- }
- }
-
- //
- // Calculate the size of the Ip4VariableData. As there may be no IP child,
- // we should add extra buffer for the address paris only if the number of configured
- // children is more than 1.
- //
- VariableDataSize = sizeof (EFI_IP4_VARIABLE_DATA);
-
- if (NumConfiguredInstance > 1) {
- VariableDataSize += sizeof (EFI_IP4_ADDRESS_PAIR) * (NumConfiguredInstance - 1);
- }
-
- Ip4VariableData = AllocatePool (VariableDataSize);
- if (Ip4VariableData == NULL) {
- return EFI_OUT_OF_RESOURCES;
- }
-
- Ip4VariableData->DriverHandle = IpSb->Image;
- Ip4VariableData->AddressCount = NumConfiguredInstance;
-
- Ip4AddressPair = &Ip4VariableData->AddressPairs[0];
-
- //
- // Go through the children list to fill the configured children's address pairs.
- //
- NET_LIST_FOR_EACH (Entry, &IpSb->Children) {
- IpInstance = NET_LIST_USER_STRUCT_S (Entry, IP4_PROTOCOL, Link, IP4_PROTOCOL_SIGNATURE);
-
- if (IpInstance->State == IP4_STATE_CONFIGED) {
- Ip4AddressPair->InstanceHandle = IpInstance->Handle;
- EFI_IP4 (Ip4AddressPair->Ip4Address) = NTOHL (IpInstance->Interface->Ip);
- EFI_IP4 (Ip4AddressPair->SubnetMask) = NTOHL (IpInstance->Interface->SubnetMask);
-
- Ip4AddressPair++;
- }
- }
-
- //
- // Get the mac string.
- //
- Status = NetLibGetMacString (IpSb->Controller, IpSb->Image, &NewMacString);
- if (EFI_ERROR (Status)) {
- goto ON_ERROR;
- }
-
- if (IpSb->MacString != NULL) {
- //
- // The variable is set already, we're going to update it.
- //
- if (StrCmp (IpSb->MacString, NewMacString) != 0) {
- //
- // The mac address is changed, delete the previous variable first.
- //
- gRT->SetVariable (
- IpSb->MacString,
- &gEfiIp4ServiceBindingProtocolGuid,
- EFI_VARIABLE_BOOTSERVICE_ACCESS,
- 0,
- NULL
- );
- }
-
- FreePool (IpSb->MacString);
- }
-
- IpSb->MacString = NewMacString;
-
- Status = gRT->SetVariable (
- IpSb->MacString,
- &gEfiIp4ServiceBindingProtocolGuid,
- EFI_VARIABLE_BOOTSERVICE_ACCESS,
- VariableDataSize,
- (VOID *) Ip4VariableData
- );
-
-ON_ERROR:
-
- FreePool (Ip4VariableData);
-
- return Status;
-}
-
-
-/**
- Clear the variable and free the resource.
-
- @param[in] IpSb Ip4 service binding instance
-
-**/
-VOID
-Ip4ClearVariableData (
- IN IP4_SERVICE *IpSb
- )
-{
- ASSERT (IpSb->MacString != NULL);
-
- gRT->SetVariable (
- IpSb->MacString,
- &gEfiIp4ServiceBindingProtocolGuid,
- EFI_VARIABLE_BOOTSERVICE_ACCESS,
- 0,
- NULL
- );
-
- FreePool (IpSb->MacString);
- IpSb->MacString = NULL;
-}
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.h b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.h
index 6404930..d38857c 100644
--- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.h
+++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Common.h
@@ -1,7 +1,7 @@
/** @file
Common definition for IP4.
-Copyright (c) 2005 - 2012, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 2014, 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
@@ -201,33 +201,4 @@ Ip4NtohHead (
IN IP4_HEAD *Head
);
-/**
- Set the Ip4 variable data.
-
- Save the list of all of the IPv4 addresses and subnet masks that are currently
- being used to volatile variable storage.
-
- @param[in] IpSb Ip4 service binding instance
-
- @retval EFI_SUCCESS Successfully set variable.
- @retval EFI_OUT_OF_RESOURCES There are not enough resources to set the variable.
- @retval other Set variable failed.
-
-**/
-EFI_STATUS
-Ip4SetVariableData (
- IN IP4_SERVICE *IpSb
- );
-
-/**
- Clear the variable and free the resource.
-
- @param[in] IpSb Ip4 service binding instance
-
-**/
-VOID
-Ip4ClearVariableData (
- IN IP4_SERVICE *IpSb
- );
-
#endif
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Driver.c b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Driver.c
index 73b4e24..4944113 100644
--- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Driver.c
+++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Driver.c
@@ -1,7 +1,7 @@
/** @file
The driver binding and service binding protocol for IP4 driver.
-Copyright (c) 2005 - 2013, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 2014, 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
@@ -297,8 +297,6 @@ Ip4CreateService (
IpSb->MaxPacketSize -= NET_VLAN_TAG_LEN;
}
IpSb->OldMaxPacketSize = IpSb->MaxPacketSize;
- IpSb->MacString = NULL;
-
*Service = IpSb;
return EFI_SUCCESS;
@@ -519,8 +517,6 @@ Ip4DriverBindingStart (
//
mIp4Id = (UINT16)NET_RANDOM (NetRandomInitSeed ());
- Ip4SetVariableData (IpSb);
-
return Status;
UNINSTALL_PROTOCOL:
@@ -717,11 +713,6 @@ Ip4DriverBindingStop (
IpSb->State = IP4_SERVICE_DESTROY;
//
- // Clear the variable data.
- //
- Ip4ClearVariableData (IpSb);
-
- //
// OK, clean other resources then uninstall the service binding protocol.
//
Status = Ip4CleanService (IpSb);
@@ -975,9 +966,6 @@ Ip4ServiceBindingDestroyChild (
}
Status = Ip4CleanProtocol (IpInstance);
-
- Ip4SetVariableData (IpSb);
-
if (EFI_ERROR (Status)) {
gBS->InstallMultipleProtocolInterfaces (
&ChildHandle,
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.c b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.c
index cd01685..06a56e1 100644
--- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.c
+++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.c
@@ -1,6 +1,6 @@
/** @file
-Copyright (c) 2005 - 2013, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 2014, 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
@@ -701,8 +701,6 @@ Ip4AutoConfigCallBackDpc (
IpSb->State = IP4_SERVICE_CONFIGED;
- Ip4SetVariableData (IpSb);
-
ON_EXIT:
FreePool (Data);
}
@@ -1312,11 +1310,6 @@ EfiIp4Configure (
//
Ip4ServiceConfigMnp (IpInstance->Service, FALSE);
- //
- // Update the variable data.
- //
- Ip4SetVariableData (IpInstance->Service);
-
ON_EXIT:
gBS->RestoreTPL (OldTpl);
return Status;
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.h b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.h
index ad8a927..c49e013 100644
--- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.h
+++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Impl.h
@@ -1,7 +1,7 @@
/** @file
Ip4 internal functions and type defintions.
-Copyright (c) 2005 - 2012, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 2014, 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
@@ -202,11 +202,6 @@ struct _IP4_SERVICE {
EFI_EVENT ReconfigEvent;
EFI_EVENT ActiveEvent;
- //
- // The string representation of the current mac address of the
- // NIC this IP4_SERVICE works on.
- //
- CHAR16 *MacString;
UINT32 MaxPacketSize;
UINT32 OldMaxPacketSize; ///< The MTU before IPsec enable.
};