summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Include/Library/IpIoLib.h
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Include/Library/IpIoLib.h')
-rw-r--r--MdeModulePkg/Include/Library/IpIoLib.h319
1 files changed, 159 insertions, 160 deletions
diff --git a/MdeModulePkg/Include/Library/IpIoLib.h b/MdeModulePkg/Include/Library/IpIoLib.h
index 640e5f7b49..19f86799ef 100644
--- a/MdeModulePkg/Include/Library/IpIoLib.h
+++ b/MdeModulePkg/Include/Library/IpIoLib.h
@@ -1,5 +1,5 @@
/** @file
- This library provides IpIo layer upon EFI IP4 Protocol.
+ This library provides IpIo layer upon EFI IP4 Protocol.
Copyright (c) 2005 - 2008, Intel Corporation
All rights reserved. This program and the accompanying materials
@@ -15,56 +15,55 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#ifndef _IP_IO_H_
#define _IP_IO_H_
-#include <PiDxe.h>
-#include <Protocol/Ip4.h>
-#include <Library/IpIoLib.h>
+#include <Protocol/Ip4.h>
+#include <Library/IpIoLib.h>
#include <Library/NetLib.h>
-//
-// type and code define for ICMP protocol error got
-// from IP
-//
-#define ICMP_TYPE_UNREACH 3
-#define ICMP_TYPE_TIMXCEED 11
-#define ICMP_TYPE_PARAMPROB 12
-#define ICMP_TYPE_SOURCEQUENCH 4
-
-#define ICMP_CODE_UNREACH_NET 0
-#define ICMP_CODE_UNREACH_HOST 1
-#define ICMP_CODE_UNREACH_PROTOCOL 2
-#define ICMP_CODE_UNREACH_PORT 3
-#define ICMP_CODE_UNREACH_NEEDFRAG 4
-#define ICMP_CODE_UNREACH_SRCFAIL 5
-#define ICMP_CODE_UNREACH_NET_UNKNOWN 6
-#define ICMP_CODE_UNREACH_HOST_UNKNOWN 7
-#define ICMP_CODE_UNREACH_ISOLATED 8
-#define ICMP_CODE_UNREACH_NET_PROHIB 9
-#define ICMP_CODE_UNREACH_HOST_PROHIB 10
-#define ICMP_CODE_UNREACH_TOSNET 11
-#define ICMP_CODE_UNREACH_TOSHOST 12
-
-//
-// this error will be delivered to the
-// listening transportation layer protocol
-// consuming IpIO
-//
-typedef enum {
- ICMP_ERR_UNREACH_NET = 0,
- ICMP_ERR_UNREACH_HOST,
- ICMP_ERR_UNREACH_PROTOCOL,
- ICMP_ERR_UNREACH_PORT,
- ICMP_ERR_MSGSIZE,
- ICMP_ERR_UNREACH_SRCFAIL,
- ICMP_ERR_TIMXCEED_INTRANS,
- ICMP_ERR_TIMXCEED_REASS,
- ICMP_ERR_QUENCH,
- ICMP_ERR_PARAMPROB
-} ICMP_ERROR;
-
-typedef struct _ICMP_ERROR_INFO {
- BOOLEAN IsHard;
- BOOLEAN Notify;
-} ICMP_ERROR_INFO;
+//
+// type and code define for ICMP protocol error got
+// from IP
+//
+#define ICMP_TYPE_UNREACH 3
+#define ICMP_TYPE_TIMXCEED 11
+#define ICMP_TYPE_PARAMPROB 12
+#define ICMP_TYPE_SOURCEQUENCH 4
+
+#define ICMP_CODE_UNREACH_NET 0
+#define ICMP_CODE_UNREACH_HOST 1
+#define ICMP_CODE_UNREACH_PROTOCOL 2
+#define ICMP_CODE_UNREACH_PORT 3
+#define ICMP_CODE_UNREACH_NEEDFRAG 4
+#define ICMP_CODE_UNREACH_SRCFAIL 5
+#define ICMP_CODE_UNREACH_NET_UNKNOWN 6
+#define ICMP_CODE_UNREACH_HOST_UNKNOWN 7
+#define ICMP_CODE_UNREACH_ISOLATED 8
+#define ICMP_CODE_UNREACH_NET_PROHIB 9
+#define ICMP_CODE_UNREACH_HOST_PROHIB 10
+#define ICMP_CODE_UNREACH_TOSNET 11
+#define ICMP_CODE_UNREACH_TOSHOST 12
+
+//
+// this error will be delivered to the
+// listening transportation layer protocol
+// consuming IpIO
+//
+typedef enum {
+ ICMP_ERR_UNREACH_NET = 0,
+ ICMP_ERR_UNREACH_HOST,
+ ICMP_ERR_UNREACH_PROTOCOL,
+ ICMP_ERR_UNREACH_PORT,
+ ICMP_ERR_MSGSIZE,
+ ICMP_ERR_UNREACH_SRCFAIL,
+ ICMP_ERR_TIMXCEED_INTRANS,
+ ICMP_ERR_TIMXCEED_REASS,
+ ICMP_ERR_QUENCH,
+ ICMP_ERR_PARAMPROB
+} ICMP_ERROR;
+
+typedef struct _ICMP_ERROR_INFO {
+ BOOLEAN IsHard;
+ BOOLEAN Notify;
+} ICMP_ERROR_INFO;
#define EFI_IP4_HEADER_LEN(HdrPtr) ((HdrPtr)->HeaderLength << 2)
@@ -170,15 +169,15 @@ typedef struct _IP_IO_IP_INFO {
INTN RefCnt;
} IP_IO_IP_INFO;
-/**
- Create a new IP_IO instance.
-
- @param Image The image handle of an IP_IO consumer protocol.
- @param Controller The controller handle of an IP_IO consumer protocol
- installed on.
-
- @return Pointer to a newly created IP_IO instance.
-
+/**
+ Create a new IP_IO instance.
+
+ @param Image The image handle of an IP_IO consumer protocol.
+ @param Controller The controller handle of an IP_IO consumer protocol
+ installed on.
+
+ @return Pointer to a newly created IP_IO instance.
+
**/
IP_IO *
EFIAPI
@@ -187,15 +186,15 @@ IpIoCreate (
IN EFI_HANDLE Controller
);
-/**
- Destroy an IP_IO instance.
-
- @param IpIo Pointer to the IP_IO instance that needs to
- destroy.
-
- @retval EFI_SUCCESS The IP_IO instance destroyed successfully.
- @retval other Error condition occurred.
-
+/**
+ Destroy an IP_IO instance.
+
+ @param IpIo Pointer to the IP_IO instance that needs to
+ destroy.
+
+ @retval EFI_SUCCESS The IP_IO instance destroyed successfully.
+ @retval other Error condition occurred.
+
**/
EFI_STATUS
EFIAPI
@@ -203,14 +202,14 @@ IpIoDestroy (
IN IP_IO *IpIo
);
-/**
- Stop an IP_IO instance.
-
- @param IpIo Pointer to the IP_IO instance that needs to stop.
-
- @retval EFI_SUCCESS The IP_IO instance stopped successfully.
- @retval other Error condition occurred.
-
+/**
+ Stop an IP_IO instance.
+
+ @param IpIo Pointer to the IP_IO instance that needs to stop.
+
+ @retval EFI_SUCCESS The IP_IO instance stopped successfully.
+ @retval other Error condition occurred.
+
**/
EFI_STATUS
EFIAPI
@@ -218,16 +217,16 @@ IpIoStop (
IN IP_IO *IpIo
);
-/**
- Open an IP_IO instance for use.
-
- @param IpIo Pointer to an IP_IO instance that needs to open.
- @param OpenData The configuration data for the IP_IO instance.
-
- @retval EFI_SUCCESS The IP_IO instance opened with OpenData
- successfully.
- @retval other Error condition occurred.
-
+/**
+ Open an IP_IO instance for use.
+
+ @param IpIo Pointer to an IP_IO instance that needs to open.
+ @param OpenData The configuration data for the IP_IO instance.
+
+ @retval EFI_SUCCESS The IP_IO instance opened with OpenData
+ successfully.
+ @retval other Error condition occurred.
+
**/
EFI_STATUS
IpIoOpen (
@@ -235,23 +234,23 @@ IpIoOpen (
IN IP_IO_OPEN_DATA *OpenData
);
-/**
- Send out an IP packet.
-
- @param IpIo Pointer to an IP_IO instance used for sending IP
- packet.
- @param Pkt Pointer to the IP packet to be sent.
- @param Sender The IP protocol instance used for sending.
+/**
+ Send out an IP packet.
+
+ @param IpIo Pointer to an IP_IO instance used for sending IP
+ packet.
+ @param Pkt Pointer to the IP packet to be sent.
+ @param Sender The IP protocol instance used for sending.
@param Context
- @param NotifyData
- @param Dest The destination IP address to send this packet to.
- @param OverrideData The data to override some configuration of the IP
- instance used for sending.
-
- @retval EFI_SUCCESS The operation is completed successfully.
- @retval EFI_NOT_STARTED The IpIo is not configured.
- @retval EFI_OUT_OF_RESOURCES Failed due to resource limit.
-
+ @param NotifyData
+ @param Dest The destination IP address to send this packet to.
+ @param OverrideData The data to override some configuration of the IP
+ instance used for sending.
+
+ @retval EFI_SUCCESS The operation is completed successfully.
+ @retval EFI_NOT_STARTED The IpIo is not configured.
+ @retval EFI_OUT_OF_RESOURCES Failed due to resource limit.
+
**/
EFI_STATUS
EFIAPI
@@ -265,11 +264,11 @@ IpIoSend (
IN IP_IO_OVERRIDE *OverrideData
);
-/**
- Cancel the IP transmit token which wraps this Packet.
-
- @param IpIo Pointer to the IP_IO instance.
- @param Packet Pointer to the packet to cancel.
+/**
+ Cancel the IP transmit token which wraps this Packet.
+
+ @param IpIo Pointer to the IP_IO instance.
+ @param Packet Pointer to the packet to cancel.
**/
VOID
@@ -279,14 +278,14 @@ IpIoCancelTxToken (
IN VOID *Packet
);
-/**
- Add a new IP instance for sending data.
-
- @param IpIo Pointer to a IP_IO instance to add a new IP
- instance for sending purpose.
-
- @return Pointer to the created IP_IO_IP_INFO structure, NULL is failed.
-
+/**
+ Add a new IP instance for sending data.
+
+ @param IpIo Pointer to a IP_IO instance to add a new IP
+ instance for sending purpose.
+
+ @return Pointer to the created IP_IO_IP_INFO structure, NULL is failed.
+
**/
IP_IO_IP_INFO *
EFIAPI
@@ -294,20 +293,20 @@ IpIoAddIp (
IN IP_IO *IpIo
);
-/**
- Configure the IP instance of this IpInfo and start the receiving if Ip4ConfigData
- is not NULL.
-
- @param IpInfo Pointer to the IP_IO_IP_INFO instance.
- @param Ip4ConfigData The IP4 configure data used to configure the ip
- instance, if NULL the ip instance is reseted. If
- UseDefaultAddress is set to TRUE, and the configure
- operation succeeds, the default address information
- is written back in this Ip4ConfigData.
-
- @retval EFI_STATUS The status returned by IP4->Configure or
- IP4->Receive.
-
+/**
+ Configure the IP instance of this IpInfo and start the receiving if Ip4ConfigData
+ is not NULL.
+
+ @param IpInfo Pointer to the IP_IO_IP_INFO instance.
+ @param Ip4ConfigData The IP4 configure data used to configure the ip
+ instance, if NULL the ip instance is reseted. If
+ UseDefaultAddress is set to TRUE, and the configure
+ operation succeeds, the default address information
+ is written back in this Ip4ConfigData.
+
+ @retval EFI_STATUS The status returned by IP4->Configure or
+ IP4->Receive.
+
**/
EFI_STATUS
EFIAPI
@@ -316,15 +315,15 @@ IpIoConfigIp (
IN OUT EFI_IP4_CONFIG_DATA *Ip4ConfigData OPTIONAL
);
-/**
- Destroy an IP instance maintained in IpIo->IpList for
- sending purpose.
-
- @param IpIo Pointer to the IP_IO instance.
- @param IpInfo Pointer to the IpInfo to be removed.
-
- @return None.
-
+/**
+ Destroy an IP instance maintained in IpIo->IpList for
+ sending purpose.
+
+ @param IpIo Pointer to the IP_IO instance.
+ @param IpInfo Pointer to the IpInfo to be removed.
+
+ @return None.
+
**/
VOID
EFIAPI
@@ -333,16 +332,16 @@ IpIoRemoveIp (
IN IP_IO_IP_INFO *IpInfo
);
-/**
- Find the first IP protocol maintained in IpIo whose local
- address is the same with Src.
-
- @param IpIo Pointer to the pointer of the IP_IO instance.
- @param Src The local IP address.
-
- @return Pointer to the IP protocol can be used for sending purpose and its local
- @return address is the same with Src.
-
+/**
+ Find the first IP protocol maintained in IpIo whose local
+ address is the same with Src.
+
+ @param IpIo Pointer to the pointer of the IP_IO instance.
+ @param Src The local IP address.
+
+ @return Pointer to the IP protocol can be used for sending purpose and its local
+ @return address is the same with Src.
+
**/
IP_IO_IP_INFO *
EFIAPI
@@ -351,19 +350,19 @@ IpIoFindSender (
IN IP4_ADDR Src
);
-/**
- Get the ICMP error map information, the ErrorStatus will be returned.
- The IsHard and Notify are optional. If they are not NULL, this rouine will
- fill them.
- We move IcmpErrMap[] to local variable to enable EBC build.
-
- @param IcmpError IcmpError Type
- @param IsHard Whether it is a hard error
- @param Notify Whether it need to notify SockError
-
- @return ICMP Error Status
-
-**/
+/**
+ Get the ICMP error map information, the ErrorStatus will be returned.
+ The IsHard and Notify are optional. If they are not NULL, this rouine will
+ fill them.
+ We move IcmpErrMap[] to local variable to enable EBC build.
+
+ @param IcmpError IcmpError Type
+ @param IsHard Whether it is a hard error
+ @param Notify Whether it need to notify SockError
+
+ @return ICMP Error Status
+
+**/
EFI_STATUS
EFIAPI
IpIoGetIcmpErrStatus (