Lines Matching refs:Sock

187   IN SOCKET     *Sock,  in SockSetTcpRxData()  argument
217 Sock->RcvBuffer.DataQueue, in SockSetTcpRxData()
237 IN OUT SOCKET *Sock in SockProcessSndToken() argument
247 ASSERT ((Sock != NULL) && (SockStream == Sock->Type)); in SockProcessSndToken()
249 FreeSpace = SockGetFreeSpace (Sock, SOCK_SND_BUF); in SockProcessSndToken()
255 while ((FreeSpace >= Sock->SndBuffer.LowWater) && !IsListEmpty (&Sock->SndTokenList)) { in SockProcessSndToken()
258 &(Sock->SndTokenList), in SockProcessSndToken()
268 &(Sock->ProcessingSndTokenList), in SockProcessSndToken()
279 Status = SockProcessTcpSndData (Sock, TxData); in SockProcessSndToken()
314 IN OUT SOCKET *Sock, in SockProcessRcvToken() argument
322 ASSERT (Sock != NULL); in SockProcessRcvToken()
324 ASSERT (SockStream == Sock->Type); in SockProcessRcvToken()
329 &Sock->RcvBuffer, in SockProcessRcvToken()
338 SockSetTcpRxData (Sock, RxData, TokenRcvdBytes, IsUrg); in SockProcessRcvToken()
340 NetbufQueTrim (Sock->RcvBuffer.DataQueue, TokenRcvdBytes); in SockProcessRcvToken()
359 IN SOCKET *Sock, in SockProcessTcpSndData() argument
391 NetbufQueAppend (Sock->SndBuffer.DataQueue, SndData); in SockProcessTcpSndData()
397 Status = Sock->ProtoHandler (Sock, SOCK_SNDURG, NULL); in SockProcessTcpSndData()
405 Status = Sock->ProtoHandler (Sock, SOCK_SNDPUSH, NULL); in SockProcessTcpSndData()
416 Status = Sock->ProtoHandler (Sock, SOCK_SND, NULL); in SockProcessTcpSndData()
434 IN SOCKET *Sock, in SockFlushPendingToken() argument
441 ASSERT ((Sock != NULL) && (PendingTokenList != NULL)); in SockFlushPendingToken()
451 SIGNAL_TOKEN (Token, Sock->SockError); in SockFlushPendingToken()
467 IN OUT SOCKET *Sock in SockWakeConnToken() argument
470 ASSERT (Sock->ConnectionToken != NULL); in SockWakeConnToken()
472 SIGNAL_TOKEN (Sock->ConnectionToken, EFI_SUCCESS); in SockWakeConnToken()
473 Sock->ConnectionToken = NULL; in SockWakeConnToken()
478 SockProcessSndToken (Sock); in SockWakeConnToken()
489 IN OUT SOCKET *Sock in SockWakeListenToken() argument
496 Parent = Sock->Parent; in SockWakeListenToken()
498 ASSERT ((Parent != NULL) && SOCK_IS_LISTENING (Parent) && SOCK_IS_CONNECTED (Sock)); in SockWakeListenToken()
508 ListenToken->NewChildHandle = Sock->SockHandle; in SockWakeListenToken()
515 RemoveEntryList (&Sock->ConnectionList); in SockWakeListenToken()
524 Sock->Parent = NULL; in SockWakeListenToken()
536 IN OUT SOCKET *Sock in SockWakeRcvToken() argument
544 ASSERT (Sock->RcvBuffer.DataQueue != NULL); in SockWakeRcvToken()
546 RcvdBytes = (Sock->RcvBuffer.DataQueue)->BufSize; in SockWakeRcvToken()
550 while (RcvdBytes > 0 && !IsListEmpty (&Sock->RcvTokenList)) { in SockWakeRcvToken()
553 &Sock->RcvTokenList, in SockWakeRcvToken()
559 TokenRcvdBytes = SockProcessRcvToken (Sock, RcvToken); in SockWakeRcvToken()
647 SOCKET *Sock; in SockCreate() local
679 Sock = AllocateZeroPool (sizeof (SOCKET)); in SockCreate()
680 if (NULL == Sock) { in SockCreate()
686 InitializeListHead (&Sock->Link); in SockCreate()
687 InitializeListHead (&Sock->ConnectionList); in SockCreate()
688 InitializeListHead (&Sock->ListenTokenList); in SockCreate()
689 InitializeListHead (&Sock->RcvTokenList); in SockCreate()
690 InitializeListHead (&Sock->SndTokenList); in SockCreate()
691 InitializeListHead (&Sock->ProcessingSndTokenList); in SockCreate()
693 EfiInitializeLock (&(Sock->Lock), TPL_CALLBACK); in SockCreate()
695 Sock->SndBuffer.DataQueue = NetbufQueAlloc (); in SockCreate()
696 if (NULL == Sock->SndBuffer.DataQueue) { in SockCreate()
705 Sock->RcvBuffer.DataQueue = NetbufQueAlloc (); in SockCreate()
706 if (NULL == Sock->RcvBuffer.DataQueue) { in SockCreate()
715 Sock->Signature = SOCK_SIGNATURE; in SockCreate()
717 Sock->Parent = Parent; in SockCreate()
718 Sock->BackLog = SockInitData->BackLog; in SockCreate()
719 Sock->ProtoHandler = SockInitData->ProtoHandler; in SockCreate()
720 Sock->SndBuffer.HighWater = SockInitData->SndBufferSize; in SockCreate()
721 Sock->RcvBuffer.HighWater = SockInitData->RcvBufferSize; in SockCreate()
722 Sock->Type = SockInitData->Type; in SockCreate()
723 Sock->DriverBinding = SockInitData->DriverBinding; in SockCreate()
724 Sock->State = SockInitData->State; in SockCreate()
725 Sock->CreateCallback = SockInitData->CreateCallback; in SockCreate()
726 Sock->DestroyCallback = SockInitData->DestroyCallback; in SockCreate()
727 Sock->Context = SockInitData->Context; in SockCreate()
729 Sock->SockError = EFI_ABORTED; in SockCreate()
730 Sock->SndBuffer.LowWater = SOCK_BUFF_LOW_WATER; in SockCreate()
731 Sock->RcvBuffer.LowWater = SOCK_BUFF_LOW_WATER; in SockCreate()
733 Sock->IpVersion = SockInitData->IpVersion; in SockCreate()
738 CopyMem (&Sock->NetProtocol, SockInitData->Protocol, ProtocolLength); in SockCreate()
743 CopyMem (Sock->ProtoReserved, SockInitData->ProtoData, SockInitData->DataSize); in SockCreate()
746 &Sock->SockHandle, in SockCreate()
748 &Sock->NetProtocol, in SockCreate()
778 InsertTailList (&Parent->ConnectionList, &Sock->ConnectionList); in SockCreate()
781 if (Sock->CreateCallback != NULL) { in SockCreate()
782 Status = Sock->CreateCallback (Sock, Sock->Context); in SockCreate()
788 return Sock; in SockCreate()
792 if (Sock->SockHandle != NULL) { in SockCreate()
794 Sock->SockHandle, in SockCreate()
796 &Sock->NetProtocol, in SockCreate()
801 if (NULL != Sock->SndBuffer.DataQueue) { in SockCreate()
802 NetbufQueFree (Sock->SndBuffer.DataQueue); in SockCreate()
805 if (NULL != Sock->RcvBuffer.DataQueue) { in SockCreate()
806 NetbufQueFree (Sock->RcvBuffer.DataQueue); in SockCreate()
809 FreePool (Sock); in SockCreate()
822 IN OUT SOCKET *Sock in SockDestroy() argument
825 ASSERT (SockStream == Sock->Type); in SockDestroy()
831 if (!SOCK_IS_UNCONFIGURED (Sock)) { in SockDestroy()
833 SockConnFlush (Sock); in SockDestroy()
834 SockSetState (Sock, SO_CLOSED); in SockDestroy()
835 Sock->ConfigureState = SO_UNCONFIGURED; in SockDestroy()
841 NetbufQueFree (Sock->RcvBuffer.DataQueue); in SockDestroy()
842 NetbufQueFree (Sock->SndBuffer.DataQueue); in SockDestroy()
847 if (Sock->Parent != NULL) { in SockDestroy()
849 RemoveEntryList (&(Sock->ConnectionList)); in SockDestroy()
850 (Sock->Parent->ConnCnt)--; in SockDestroy()
855 Sock->Parent->ConnCnt) in SockDestroy()
858 Sock->Parent = NULL; in SockDestroy()
861 FreePool (Sock); in SockDestroy()
872 IN OUT SOCKET *Sock in SockConnFlush() argument
877 ASSERT (Sock != NULL); in SockConnFlush()
882 Sock->Flag = 0; in SockConnFlush()
887 NetbufQueFlush (Sock->SndBuffer.DataQueue); in SockConnFlush()
888 NetbufQueFlush (Sock->RcvBuffer.DataQueue); in SockConnFlush()
893 if (Sock->ConnectionToken != NULL) { in SockConnFlush()
894 SIGNAL_TOKEN (Sock->ConnectionToken, Sock->SockError); in SockConnFlush()
895 Sock->ConnectionToken = NULL; in SockConnFlush()
898 if (Sock->CloseToken != NULL) { in SockConnFlush()
899 SIGNAL_TOKEN (Sock->CloseToken, Sock->SockError); in SockConnFlush()
900 Sock->CloseToken = NULL; in SockConnFlush()
903 SockFlushPendingToken (Sock, &(Sock->ListenTokenList)); in SockConnFlush()
904 SockFlushPendingToken (Sock, &(Sock->RcvTokenList)); in SockConnFlush()
905 SockFlushPendingToken (Sock, &(Sock->SndTokenList)); in SockConnFlush()
906 SockFlushPendingToken (Sock, &(Sock->ProcessingSndTokenList)); in SockConnFlush()
911 if (SOCK_IS_LISTENING (Sock)) { in SockConnFlush()
912 while (!IsListEmpty (&Sock->ConnectionList)) { in SockConnFlush()
914 &Sock->ConnectionList, in SockConnFlush()
922 Sock->ConnCnt = 0; in SockConnFlush()
936 IN OUT SOCKET *Sock, in SockSetState() argument
940 Sock->State = State; in SockSetState()
953 IN SOCKET *Sock in SockClone() argument
959 InitData.BackLog = Sock->BackLog; in SockClone()
960 InitData.Parent = Sock; in SockClone()
961 InitData.State = Sock->State; in SockClone()
962 InitData.ProtoHandler = Sock->ProtoHandler; in SockClone()
963 InitData.Type = Sock->Type; in SockClone()
964 InitData.RcvBufferSize = Sock->RcvBuffer.HighWater; in SockClone()
965 InitData.SndBufferSize = Sock->SndBuffer.HighWater; in SockClone()
966 InitData.DriverBinding = Sock->DriverBinding; in SockClone()
967 InitData.IpVersion = Sock->IpVersion; in SockClone()
968 InitData.Protocol = &(Sock->NetProtocol); in SockClone()
969 InitData.CreateCallback = Sock->CreateCallback; in SockClone()
970 InitData.DestroyCallback = Sock->DestroyCallback; in SockClone()
971 InitData.Context = Sock->Context; in SockClone()
972 InitData.ProtoData = Sock->ProtoReserved; in SockClone()
973 InitData.DataSize = sizeof (Sock->ProtoReserved); in SockClone()
983 ClonedSock->ConfigureState = Sock->ConfigureState; in SockClone()
1001 IN OUT SOCKET *Sock in SockConnEstablished() argument
1005 ASSERT (SO_CONNECTING == Sock->State); in SockConnEstablished()
1007 SockSetState (Sock, SO_CONNECTED); in SockConnEstablished()
1009 if (NULL == Sock->Parent) { in SockConnEstablished()
1010 SockWakeConnToken (Sock); in SockConnEstablished()
1012 SockWakeListenToken (Sock); in SockConnEstablished()
1029 IN OUT SOCKET *Sock in SockConnClosed() argument
1032 if (Sock->CloseToken != NULL) { in SockConnClosed()
1033 SIGNAL_TOKEN (Sock->CloseToken, EFI_SUCCESS); in SockConnClosed()
1034 Sock->CloseToken = NULL; in SockConnClosed()
1037 SockConnFlush (Sock); in SockConnClosed()
1038 SockSetState (Sock, SO_CLOSED); in SockConnClosed()
1040 if (Sock->Parent != NULL) { in SockConnClosed()
1041 SockDestroyChild (Sock); in SockConnClosed()
1058 IN OUT SOCKET *Sock, in SockDataSent() argument
1065 ASSERT (!IsListEmpty (&Sock->ProcessingSndTokenList)); in SockDataSent()
1066 ASSERT (Count <= (Sock->SndBuffer.DataQueue)->BufSize); in SockDataSent()
1068 NetbufQueTrim (Sock->SndBuffer.DataQueue, Count); in SockDataSent()
1075 &(Sock->ProcessingSndTokenList), in SockDataSent()
1099 SockProcessSndToken (Sock); in SockDataSent()
1117 IN SOCKET *Sock, in SockGetDataToSend() argument
1123 ASSERT ((Sock != NULL) && SockStream == Sock->Type); in SockGetDataToSend()
1126 Sock->SndBuffer.DataQueue, in SockGetDataToSend()
1146 IN OUT SOCKET *Sock, in SockDataRcvd() argument
1151 ASSERT ((Sock != NULL) && (Sock->RcvBuffer.DataQueue != NULL) && in SockDataRcvd()
1158 NetbufQueAppend (Sock->RcvBuffer.DataQueue, NetBuffer); in SockDataRcvd()
1160 SockWakeRcvToken (Sock); in SockDataRcvd()
1175 IN SOCKET *Sock, in SockGetFreeSpace() argument
1182 ASSERT (Sock != NULL && ((SOCK_SND_BUF == Which) || (SOCK_RCV_BUF == Which))); in SockGetFreeSpace()
1185 SockBuffer = &(Sock->SndBuffer); in SockGetFreeSpace()
1187 SockBuffer = &(Sock->RcvBuffer); in SockGetFreeSpace()
1212 IN OUT SOCKET *Sock in SockNoMoreData() argument
1217 SOCK_NO_MORE_DATA (Sock); in SockNoMoreData()
1219 if (!IsListEmpty (&Sock->RcvTokenList)) { in SockNoMoreData()
1221 ASSERT (0 == GET_RCV_DATASIZE (Sock)); in SockNoMoreData()
1223 Err = Sock->SockError; in SockNoMoreData()
1225 SOCK_ERROR (Sock, EFI_CONNECTION_FIN); in SockNoMoreData()
1227 SockFlushPendingToken (Sock, &Sock->RcvTokenList); in SockNoMoreData()
1229 SOCK_ERROR (Sock, Err); in SockNoMoreData()