]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Include/Library/IpIoLib.h
MdeModulePkg: Add match2 opcode support in SetupBrowserDxe and sample code in DriverS...
[mirror_edk2.git] / MdeModulePkg / Include / Library / IpIoLib.h
index df29c0419066d7fef5e774f2a3df4fb3fc84cf69..37cba070a1fb946eec7bbdae94b219fd10646b07 100644 (file)
@@ -153,6 +153,11 @@ typedef union {
   UINT8                     PrefixLength;\r
 } IP_IO_IP_MASK;\r
 \r
+typedef union {\r
+  EFI_IP4_PROTOCOL  *Ip4;\r
+  EFI_IP6_PROTOCOL  *Ip6;\r
+} IP_IO_IP_PROTOCOL;\r
+\r
 ///\r
 /// The IP session for an IP receive packet.\r
 ///\r
@@ -195,17 +200,18 @@ VOID
   @param[in] Status        Result of the IP packet being sent.\r
   @param[in] Context       The data provided by user for the received packet when\r
                            the callback is registered in IP_IO_OPEN_DATA::SndContext.\r
-  @param[in] Sender        A pointer to EFI_IP4_PROTOCOL or EFI_IP6_PROTOCOL.\r
+  @param[in] Sender        A Union type to specify a pointer of EFI_IP4_PROTOCOL \r
+                           or EFI_IP6_PROTOCOL.\r
   @param[in] NotifyData    The Context data specified when calling IpIoSend()\r
   \r
 **/\r
 typedef\r
 VOID\r
 (EFIAPI *PKT_SENT_NOTIFY) (\r
-  IN EFI_STATUS  Status,\r
-  IN VOID        *Context,\r
-  IN VOID        *Sender,\r
-  IN VOID        *NotifyData\r
+  IN EFI_STATUS        Status,\r
+  IN VOID              *Context,\r
+  IN IP_IO_IP_PROTOCOL Sender,\r
+  IN VOID              *NotifyData\r
   );\r
 \r
 ///\r
@@ -229,7 +235,7 @@ typedef struct _IP_IO {
   //\r
   // The IP instance consumed by this IP_IO\r
   //\r
-  VOID                          *Ip;\r
+  IP_IO_IP_PROTOCOL             Ip;\r
   BOOLEAN                       IsConfigured;\r
 \r
   ///\r
@@ -280,7 +286,7 @@ typedef struct _IP_IO_SEND_ENTRY {
   IP_IO                     *IpIo;\r
   VOID                      *Context;\r
   VOID                      *NotifyData;\r
-  VOID                      *Ip;\r
+  IP_IO_IP_PROTOCOL         Ip;\r
   NET_BUF                   *Pkt;\r
   IP_IO_IP_COMPLETION_TOKEN SndToken;\r
 } IP_IO_SEND_ENTRY;\r
@@ -294,7 +300,7 @@ typedef struct _IP_IO_IP_INFO {
   IP_IO_IP_MASK             PreMask;\r
   LIST_ENTRY                Entry;\r
   EFI_HANDLE                ChildHandle;\r
-  VOID                      *Ip;\r
+  IP_IO_IP_PROTOCOL         Ip;\r
   IP_IO_IP_COMPLETION_TOKEN DummyRcvToken;\r
   INTN                      RefCnt;\r
   UINT8                     IpVersion;\r