/** @file\r
Udp6 driver's whole implementation and internal data structures.\r
\r
- Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
#include <Library/BaseMemoryLib.h>\r
#include <Library/MemoryAllocationLib.h>\r
#include <Library/DpcLib.h>\r
+#include <Library/PrintLib.h>\r
\r
#include "Udp6Driver.h"\r
\r
extern EFI_COMPONENT_NAME2_PROTOCOL gUdp6ComponentName2;\r
extern EFI_COMPONENT_NAME_PROTOCOL gUdp6ComponentName;\r
+extern EFI_UNICODE_STRING_TABLE *gUdp6ControllerNameTable;\r
extern EFI_SERVICE_BINDING_PROTOCOL mUdp6ServiceBinding;\r
extern EFI_UDP6_PROTOCOL mUdp6Protocol;\r
extern UINT16 mUdp6RandomPort;\r
UINTN ChildrenNumber;\r
IP_IO *IpIo;\r
EFI_EVENT TimeoutEvent;\r
- CHAR16 *MacString;\r
-} UDP6_SERVICE_DATA;\r
+ } UDP6_SERVICE_DATA;\r
\r
typedef struct _UDP6_INSTANCE_DATA {\r
UINT32 Signature;\r
UINT16 HeadSum;\r
EFI_STATUS IcmpError;\r
IP_IO_IP_INFO *IpInfo;\r
- BOOLEAN Destroyed;\r
+ BOOLEAN InDestroy;\r
} UDP6_INSTANCE_DATA;\r
\r
typedef struct _UDP6_RXDATA_WRAP {\r
EFI_UDP6_RECEIVE_DATA RxData;\r
} UDP6_RXDATA_WRAP;\r
\r
+typedef struct {\r
+ EFI_SERVICE_BINDING_PROTOCOL *ServiceBinding;\r
+ UINTN NumberOfChildren;\r
+ EFI_HANDLE *ChildHandleBuffer;\r
+} UDP6_DESTROY_CHILD_IN_HANDLE_BUF_CONTEXT;\r
+\r
/**\r
Clean the Udp service context data.\r
\r
IN EFI_HANDLE ControllerHandle\r
);\r
\r
-/**\r
- Set the Udp6 variable data.\r
-\r
- @param[in] Udp6Service Udp6 service data.\r
-\r
- @retval EFI_OUT_OF_RESOURCES There are not enough resources to set the\r
- variable.\r
- @retval other Set variable failed.\r
-\r
-**/\r
-EFI_STATUS\r
-Udp6SetVariableData (\r
- IN UDP6_SERVICE_DATA *Udp6Service\r
- );\r
-\r
/**\r
This function cleans the udp instance.\r
\r
IN OUT UDP6_INSTANCE_DATA *Instance\r
);\r
\r
-/**\r
- Clear the variable and free the resource.\r
-\r
- @param[in, out] Udp6Service Udp6 service data.\r
-\r
-**/\r
-VOID\r
-Udp6ClearVariableData (\r
- IN OUT UDP6_SERVICE_DATA *Udp6Service\r
- );\r
-\r
/**\r
This function intializes the new created udp instance.\r
\r