+ goto ON_EXIT;\r
+ }\r
+\r
+ //\r
+ // Open the device path on the handle where service binding resides on.\r
+ //\r
+ Status = gBS->OpenProtocol (\r
+ TcpServiceData->ControllerHandle,\r
+ &gEfiDevicePathProtocolGuid,\r
+ (VOID **) &Sock->ParentDevicePath,\r
+ TcpServiceData->DriverBindingHandle,\r
+ Sock->SockHandle,\r
+ EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER\r
+ );\r
+ if (EFI_ERROR (Status)) {\r
+ gBS->CloseProtocol (\r
+ TcpServiceData->IpIo->ChildHandle,\r
+ &gEfiIp4ProtocolGuid,\r
+ TcpServiceData->DriverBindingHandle,\r
+ Sock->SockHandle\r
+ );\r
+ SockDestroyChild (Sock);\r