diff options
Diffstat (limited to 'MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Icmp.h')
-rw-r--r-- | MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Icmp.h | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Icmp.h b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Icmp.h index 0246f9c042..5b7b1a67b3 100644 --- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Icmp.h +++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Icmp.h @@ -90,10 +90,25 @@ typedef struct { extern IP4_ICMP_CLASS mIcmpClass[];
extern EFI_IP4_ICMP_TYPE mIp4SupportedIcmp[];
+/**
+ Handle the ICMP packet. First validate the message format,
+ then according to the message types, process it as query or
+ error packet.
+
+ @param IpSb The IP service that receivd the packet
+ @param Head The IP head of the ICMP query packet
+ @param Packet The content of the ICMP query with IP head
+ removed.
+
+ @retval EFI_INVALID_PARAMETER The packet is malformated.
+ @retval EFI_SUCCESS The ICMP message is successfully processed.
+ @retval Others Failed to handle ICMP packet.
+
+**/
EFI_STATUS
Ip4IcmpHandle (
- IN IP4_SERVICE *IpSb,
- IN IP4_HEAD *Header,
- IN NET_BUF *Packet
+ IN IP4_SERVICE *IpSb,
+ IN IP4_HEAD *Head,
+ IN NET_BUF *Packet
);
#endif
|