mirror of https://github.com/acidanthera/audk.git
Updated the IpIoLiband and the change includes:
1) Add one structure member – IpHdrLen in the EFI_NET_SESSION_DATA data structure. 2) Pass IP header length to upper-layer through this new member. The length of IP header will be used for ICMP6 packet generation in upper-layer. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9437 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
169fa21031
commit
a09ee46d9a
|
@ -160,6 +160,11 @@ typedef struct _EFI_NET_SESSION_DATA {
|
||||||
EFI_IP_ADDRESS Source; ///< Source IP of the received packet
|
EFI_IP_ADDRESS Source; ///< Source IP of the received packet
|
||||||
EFI_IP_ADDRESS Dest; ///< Destination IP of the received packet
|
EFI_IP_ADDRESS Dest; ///< Destination IP of the received packet
|
||||||
IP_IO_IP_HEADER IpHdr; ///< IP header of the received packet
|
IP_IO_IP_HEADER IpHdr; ///< IP header of the received packet
|
||||||
|
UINT32 IpHdrLen; ///< IP header length of the received packet.
|
||||||
|
///< For IPv6, it includes the IP6 header
|
||||||
|
///< length and extension header length. For
|
||||||
|
///< IPv4, it includes the IP4 header length
|
||||||
|
///< and options length.
|
||||||
UINT8 IpVersion; ///< The IP version of the received packet
|
UINT8 IpVersion; ///< The IP version of the received packet
|
||||||
} EFI_NET_SESSION_DATA;
|
} EFI_NET_SESSION_DATA;
|
||||||
|
|
||||||
|
|
|
@ -1057,6 +1057,7 @@ IpIoListenHandlerDpc (
|
||||||
Session.Source.Addr[0] = EFI_IP4 (RxData->Ip4RxData.Header->SourceAddress);
|
Session.Source.Addr[0] = EFI_IP4 (RxData->Ip4RxData.Header->SourceAddress);
|
||||||
Session.Dest.Addr[0] = EFI_IP4 (RxData->Ip4RxData.Header->DestinationAddress);
|
Session.Dest.Addr[0] = EFI_IP4 (RxData->Ip4RxData.Header->DestinationAddress);
|
||||||
Session.IpHdr.Ip4Hdr = RxData->Ip4RxData.Header;
|
Session.IpHdr.Ip4Hdr = RxData->Ip4RxData.Header;
|
||||||
|
Session.IpHdrLen = RxData->Ip4RxData.HeaderLength;
|
||||||
Session.IpVersion = IP_VERSION_4;
|
Session.IpVersion = IP_VERSION_4;
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
@ -1093,6 +1094,7 @@ IpIoListenHandlerDpc (
|
||||||
sizeof(EFI_IPv6_ADDRESS)
|
sizeof(EFI_IPv6_ADDRESS)
|
||||||
);
|
);
|
||||||
Session.IpHdr.Ip6Hdr = RxData->Ip6RxData.Header;
|
Session.IpHdr.Ip6Hdr = RxData->Ip6RxData.Header;
|
||||||
|
Session.IpHdrLen = RxData->Ip6RxData.HeaderLength;
|
||||||
Session.IpVersion = IP_VERSION_6;
|
Session.IpVersion = IP_VERSION_6;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue