Add a UNION definition (IP_IO_IP_PROTOOCL) for EFI_IP4/6_PROTOCOL and change IP_IO structure using this UNION to point the special IP Protocol.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10578 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qianouyang
2010-06-13 08:18:10 +00:00
parent 0ccabf7bab
commit 2a2e33b20f
6 changed files with 126 additions and 129 deletions

View File

@@ -39,14 +39,14 @@ Tcp4Route (
IN TCP4_ROUTE_INFO *RouteInfo
)
{
EFI_IP4_PROTOCOL *Ip;
EFI_IP4_PROTOCOL *Ip4;
Ip = Tcb->IpInfo->Ip;
Ip4 = Tcb->IpInfo->Ip.Ip4;
ASSERT (Ip != NULL);
ASSERT (Ip4 != NULL);
return Ip->Routes (
Ip,
return Ip4->Routes (
Ip4,
RouteInfo->DeleteRoute,
RouteInfo->SubnetAddress,
RouteInfo->SubnetMask,
@@ -131,7 +131,7 @@ Tcp4GetMode (
}
}
Ip = Tcb->IpInfo->Ip;
Ip = Tcb->IpInfo->Ip.Ip4;
ASSERT (Ip != NULL);
return Ip->GetModeData (Ip, Mode->Ip4ModeData, Mode->MnpConfigData, Mode->SnpModeData);
@@ -607,7 +607,7 @@ Tcp4Dispatcher (
switch (Request) {
case SOCK_POLL:
Ip = (EFI_IP4_PROTOCOL *) (ProtoData->TcpService->IpIo->Ip);
Ip = ProtoData->TcpService->IpIo->Ip.Ip4;
Ip->Poll (Ip);
break;