/// The definition in here is only present to provide backwards compatability.\r
///\r
typedef struct {\r
- EFI_HANDLE InstanceHandle;\r
- EFI_IPv4_ADDRESS Ip4Address;\r
- EFI_IPv4_ADDRESS SubnetMask;\r
+ EFI_HANDLE InstanceHandle;\r
+ EFI_IPv4_ADDRESS Ip4Address;\r
+ EFI_IPv4_ADDRESS SubnetMask;\r
} EFI_IP4_ADDRESS_PAIR;\r
\r
///\r
/// The default IPv4 protocol packets to send and receive. Ignored\r
/// when AcceptPromiscuous is TRUE.\r
///\r
- UINT8 DefaultProtocol;\r
+ UINT8 DefaultProtocol;\r
///\r
/// Set to TRUE to receive all IPv4 packets that get through the receive filters.\r
/// Set to FALSE to receive only the DefaultProtocol IPv4\r
/// packets that get through the receive filters.\r
///\r
- BOOLEAN AcceptAnyProtocol;\r
+ BOOLEAN AcceptAnyProtocol;\r
///\r
/// Set to TRUE to receive ICMP error report packets. Ignored when\r
/// AcceptPromiscuous or AcceptAnyProtocol is TRUE.\r
///\r
- BOOLEAN AcceptIcmpErrors;\r
+ BOOLEAN AcceptIcmpErrors;\r
///\r
/// Set to TRUE to receive broadcast IPv4 packets. Ignored when\r
/// AcceptPromiscuous is TRUE.\r
/// Set to FALSE to stop receiving broadcast IPv4 packets.\r
///\r
- BOOLEAN AcceptBroadcast;\r
+ BOOLEAN AcceptBroadcast;\r
///\r
/// Set to TRUE to receive all IPv4 packets that are sent to any\r
/// hardware address or any protocol address.\r
/// Set to FALSE to stop receiving all promiscuous IPv4 packets\r
///\r
- BOOLEAN AcceptPromiscuous;\r
+ BOOLEAN AcceptPromiscuous;\r
///\r
/// Set to TRUE to use the default IPv4 address and default routing table.\r
///\r
- BOOLEAN UseDefaultAddress;\r
+ BOOLEAN UseDefaultAddress;\r
///\r
/// The station IPv4 address that will be assigned to this EFI IPv4Protocol instance.\r
///\r
- EFI_IPv4_ADDRESS StationAddress;\r
+ EFI_IPv4_ADDRESS StationAddress;\r
///\r
/// The subnet address mask that is associated with the station address.\r
///\r
- EFI_IPv4_ADDRESS SubnetMask;\r
+ EFI_IPv4_ADDRESS SubnetMask;\r
///\r
/// TypeOfService field in transmitted IPv4 packets.\r
///\r
- UINT8 TypeOfService;\r
+ UINT8 TypeOfService;\r
///\r
/// TimeToLive field in transmitted IPv4 packets.\r
///\r
- UINT8 TimeToLive;\r
+ UINT8 TimeToLive;\r
///\r
/// State of the DoNotFragment bit in transmitted IPv4 packets.\r
///\r
- BOOLEAN DoNotFragment;\r
+ BOOLEAN DoNotFragment;\r
///\r
/// Set to TRUE to send and receive unformatted packets. The other\r
/// IPv4 receive filters are still applied. Fragmentation is disabled for RawData mode.\r
///\r
- BOOLEAN RawData;\r
+ BOOLEAN RawData;\r
///\r
/// The timer timeout value (number of microseconds) for the\r
/// receive timeout event to be associated with each assembled\r
/// packet. Zero means do not drop assembled packets.\r
///\r
- UINT32 ReceiveTimeout;\r
+ UINT32 ReceiveTimeout;\r
///\r
/// The timer timeout value (number of microseconds) for the\r
/// transmit timeout event to be associated with each outgoing\r
/// packet. Zero means do not drop outgoing packets.\r
///\r
- UINT32 TransmitTimeout;\r
+ UINT32 TransmitTimeout;\r
} EFI_IP4_CONFIG_DATA;\r
\r
-\r
typedef struct {\r
- EFI_IPv4_ADDRESS SubnetAddress;\r
- EFI_IPv4_ADDRESS SubnetMask;\r
- EFI_IPv4_ADDRESS GatewayAddress;\r
+ EFI_IPv4_ADDRESS SubnetAddress;\r
+ EFI_IPv4_ADDRESS SubnetMask;\r
+ EFI_IPv4_ADDRESS GatewayAddress;\r
} EFI_IP4_ROUTE_TABLE;\r
\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Code;\r
+ UINT8 Type;\r
+ UINT8 Code;\r
} EFI_IP4_ICMP_TYPE;\r
\r
typedef struct {\r
///\r
/// Set to TRUE after this EFI IPv4 Protocol instance has been successfully configured.\r
///\r
- BOOLEAN IsStarted;\r
+ BOOLEAN IsStarted;\r
///\r
/// The maximum packet size, in bytes, of the packet which the upper layer driver could feed.\r
///\r
- UINT32 MaxPacketSize;\r
+ UINT32 MaxPacketSize;\r
///\r
/// Current configuration settings.\r
///\r
- EFI_IP4_CONFIG_DATA ConfigData;\r
+ EFI_IP4_CONFIG_DATA ConfigData;\r
///\r
/// Set to TRUE when the EFI IPv4 Protocol instance has a station address and subnet mask.\r
///\r
- BOOLEAN IsConfigured;\r
+ BOOLEAN IsConfigured;\r
///\r
/// Number of joined multicast groups.\r
///\r
- UINT32 GroupCount;\r
+ UINT32 GroupCount;\r
///\r
/// List of joined multicast group addresses.\r
///\r
- EFI_IPv4_ADDRESS *GroupTable;\r
+ EFI_IPv4_ADDRESS *GroupTable;\r
///\r
/// Number of entries in the routing table.\r
///\r
- UINT32 RouteCount;\r
+ UINT32 RouteCount;\r
///\r
/// Routing table entries.\r
///\r
- EFI_IP4_ROUTE_TABLE *RouteTable;\r
+ EFI_IP4_ROUTE_TABLE *RouteTable;\r
///\r
/// Number of entries in the supported ICMP types list.\r
///\r
- UINT32 IcmpTypeCount;\r
+ UINT32 IcmpTypeCount;\r
///\r
/// Array of ICMP types and codes that are supported by this EFI IPv4 Protocol driver\r
///\r
- EFI_IP4_ICMP_TYPE *IcmpTypeList;\r
+ EFI_IP4_ICMP_TYPE *IcmpTypeList;\r
} EFI_IP4_MODE_DATA;\r
\r
#pragma pack(1)\r
\r
typedef struct {\r
- UINT8 HeaderLength:4;\r
- UINT8 Version:4;\r
- UINT8 TypeOfService;\r
- UINT16 TotalLength;\r
- UINT16 Identification;\r
- UINT16 Fragmentation;\r
- UINT8 TimeToLive;\r
- UINT8 Protocol;\r
- UINT16 Checksum;\r
- EFI_IPv4_ADDRESS SourceAddress;\r
- EFI_IPv4_ADDRESS DestinationAddress;\r
+ UINT8 HeaderLength : 4;\r
+ UINT8 Version : 4;\r
+ UINT8 TypeOfService;\r
+ UINT16 TotalLength;\r
+ UINT16 Identification;\r
+ UINT16 Fragmentation;\r
+ UINT8 TimeToLive;\r
+ UINT8 Protocol;\r
+ UINT16 Checksum;\r
+ EFI_IPv4_ADDRESS SourceAddress;\r
+ EFI_IPv4_ADDRESS DestinationAddress;\r
} EFI_IP4_HEADER;\r
#pragma pack()\r
\r
-\r
typedef struct {\r
- UINT32 FragmentLength;\r
- VOID *FragmentBuffer;\r
+ UINT32 FragmentLength;\r
+ VOID *FragmentBuffer;\r
} EFI_IP4_FRAGMENT_DATA;\r
\r
-\r
typedef struct {\r
- EFI_TIME TimeStamp;\r
- EFI_EVENT RecycleSignal;\r
- UINT32 HeaderLength;\r
- EFI_IP4_HEADER *Header;\r
- UINT32 OptionsLength;\r
- VOID *Options;\r
- UINT32 DataLength;\r
- UINT32 FragmentCount;\r
- EFI_IP4_FRAGMENT_DATA FragmentTable[1];\r
+ EFI_TIME TimeStamp;\r
+ EFI_EVENT RecycleSignal;\r
+ UINT32 HeaderLength;\r
+ EFI_IP4_HEADER *Header;\r
+ UINT32 OptionsLength;\r
+ VOID *Options;\r
+ UINT32 DataLength;\r
+ UINT32 FragmentCount;\r
+ EFI_IP4_FRAGMENT_DATA FragmentTable[1];\r
} EFI_IP4_RECEIVE_DATA;\r
\r
-\r
typedef struct {\r
- EFI_IPv4_ADDRESS SourceAddress;\r
- EFI_IPv4_ADDRESS GatewayAddress;\r
- UINT8 Protocol;\r
- UINT8 TypeOfService;\r
- UINT8 TimeToLive;\r
- BOOLEAN DoNotFragment;\r
+ EFI_IPv4_ADDRESS SourceAddress;\r
+ EFI_IPv4_ADDRESS GatewayAddress;\r
+ UINT8 Protocol;\r
+ UINT8 TypeOfService;\r
+ UINT8 TimeToLive;\r
+ BOOLEAN DoNotFragment;\r
} EFI_IP4_OVERRIDE_DATA;\r
\r
typedef struct {\r
- EFI_IPv4_ADDRESS DestinationAddress;\r
- EFI_IP4_OVERRIDE_DATA *OverrideData; //OPTIONAL\r
- UINT32 OptionsLength; //OPTIONAL\r
- VOID *OptionsBuffer; //OPTIONAL\r
- UINT32 TotalDataLength;\r
- UINT32 FragmentCount;\r
- EFI_IP4_FRAGMENT_DATA FragmentTable[1];\r
+ EFI_IPv4_ADDRESS DestinationAddress;\r
+ EFI_IP4_OVERRIDE_DATA *OverrideData; // OPTIONAL\r
+ UINT32 OptionsLength; // OPTIONAL\r
+ VOID *OptionsBuffer; // OPTIONAL\r
+ UINT32 TotalDataLength;\r
+ UINT32 FragmentCount;\r
+ EFI_IP4_FRAGMENT_DATA FragmentTable[1];\r
} EFI_IP4_TRANSMIT_DATA;\r
\r
typedef struct {\r
/// EFI_NOTIFY_SIGNAL. The Task Priority Level (TPL) of\r
/// Event must be lower than or equal to TPL_CALLBACK.\r
///\r
- EFI_EVENT Event;\r
+ EFI_EVENT Event;\r
///\r
/// The status that is returned to the caller at the end of the operation\r
/// to indicate whether this operation completed successfully.\r
///\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
union {\r
///\r
/// When this token is used for receiving, RxData is a pointer to the EFI_IP4_RECEIVE_DATA.\r
///\r
- EFI_IP4_RECEIVE_DATA *RxData;\r
+ EFI_IP4_RECEIVE_DATA *RxData;\r
///\r
/// When this token is used for transmitting, TxData is a pointer to the EFI_IP4_TRANSMIT_DATA.\r
///\r
- EFI_IP4_TRANSMIT_DATA *TxData;\r
+ EFI_IP4_TRANSMIT_DATA *TxData;\r
} Packet;\r
} EFI_IP4_COMPLETION_TOKEN;\r
\r
/// used by drivers, daemons, and applications to transmit and receive network packets.\r
///\r
struct _EFI_IP4_PROTOCOL {\r
- EFI_IP4_GET_MODE_DATA GetModeData;\r
- EFI_IP4_CONFIGURE Configure;\r
- EFI_IP4_GROUPS Groups;\r
- EFI_IP4_ROUTES Routes;\r
- EFI_IP4_TRANSMIT Transmit;\r
- EFI_IP4_RECEIVE Receive;\r
- EFI_IP4_CANCEL Cancel;\r
- EFI_IP4_POLL Poll;\r
+ EFI_IP4_GET_MODE_DATA GetModeData;\r
+ EFI_IP4_CONFIGURE Configure;\r
+ EFI_IP4_GROUPS Groups;\r
+ EFI_IP4_ROUTES Routes;\r
+ EFI_IP4_TRANSMIT Transmit;\r
+ EFI_IP4_RECEIVE Receive;\r
+ EFI_IP4_CANCEL Cancel;\r
+ EFI_IP4_POLL Poll;\r
};\r
\r
-extern EFI_GUID gEfiIp4ServiceBindingProtocolGuid;\r
-extern EFI_GUID gEfiIp4ProtocolGuid;\r
+extern EFI_GUID gEfiIp4ServiceBindingProtocolGuid;\r
+extern EFI_GUID gEfiIp4ProtocolGuid;\r
\r
#endif\r