- Tcp4VariableData->DriverHandle = Tcp4Service->DriverBindingHandle;\r
- Tcp4VariableData->ServiceCount = NumConfiguredInstance;\r
-\r
- Tcp4ServicePoint = &Tcp4VariableData->Services[0];\r
-\r
- //\r
- // Go through the running queue to fill the service points.\r
- //\r
- NET_LIST_FOR_EACH (Entry, &mTcpRunQue) {\r
- TcpPcb = NET_LIST_USER_STRUCT (Entry, TCP_CB, List);\r
-\r
- TcpProto = (TCP4_PROTO_DATA *) TcpPcb->Sk->ProtoReserved;\r
-\r
- if (TcpProto->TcpService == Tcp4Service) {\r
- //\r
- // This tcp instance belongs to the Tcp4Service.\r
- //\r
- Tcp4ServicePoint->InstanceHandle = TcpPcb->Sk->SockHandle;\r
- EFI_IP4 (Tcp4ServicePoint->LocalAddress) = TcpPcb->LocalEnd.Ip;\r
- Tcp4ServicePoint->LocalPort = NTOHS (TcpPcb->LocalEnd.Port);\r
- EFI_IP4 (Tcp4ServicePoint->RemoteAddress) = TcpPcb->RemoteEnd.Ip;\r
- Tcp4ServicePoint->RemotePort = NTOHS (TcpPcb->RemoteEnd.Port);\r
-\r
- Tcp4ServicePoint++;\r
- }\r
- }\r
-\r
- //\r
- // Go through the listening queue to fill the service points.\r
- //\r
- NET_LIST_FOR_EACH (Entry, &mTcpListenQue) {\r
- TcpPcb = NET_LIST_USER_STRUCT (Entry, TCP_CB, List);\r
-\r
- TcpProto = (TCP4_PROTO_DATA *) TcpPcb->Sk->ProtoReserved;\r
-\r
- if (TcpProto->TcpService == Tcp4Service) {\r
- //\r
- // This tcp instance belongs to the Tcp4Service.\r
- //\r
- Tcp4ServicePoint->InstanceHandle = TcpPcb->Sk->SockHandle;\r
- EFI_IP4 (Tcp4ServicePoint->LocalAddress) = TcpPcb->LocalEnd.Ip;\r
- Tcp4ServicePoint->LocalPort = NTOHS (TcpPcb->LocalEnd.Port);\r
- EFI_IP4 (Tcp4ServicePoint->RemoteAddress) = TcpPcb->RemoteEnd.Ip;\r
- Tcp4ServicePoint->RemotePort = NTOHS (TcpPcb->RemoteEnd.Port);\r
-\r
- Tcp4ServicePoint++;\r
- }\r
- }\r
-\r
- //\r
- // Get the mac string.\r
- //\r
- Status = NetLibGetMacString (\r
- Tcp4Service->ControllerHandle,\r
- Tcp4Service->DriverBindingHandle,\r
- &NewMacString\r
- );\r