• Home
  • Raw
  • Download

Lines Matching refs:sock

386 	deSocket* sock = (deSocket*)deCalloc(sizeof(deSocket));  in deSocket_create()  local
387 if (!sock) in deSocket_create()
388 return sock; in deSocket_create()
396 sock->stateLock = deMutex_create(0); in deSocket_create()
397 sock->handle = DE_INVALID_SOCKET_HANDLE; in deSocket_create()
398 sock->state = DE_SOCKETSTATE_CLOSED; in deSocket_create()
400 return sock; in deSocket_create()
403 void deSocket_destroy (deSocket* sock) in deSocket_destroy() argument
405 if (sock->state != DE_SOCKETSTATE_CLOSED) in deSocket_destroy()
406 deSocket_close(sock); in deSocket_destroy()
408 deMutex_destroy(sock->stateLock); in deSocket_destroy()
409 deFree(sock); in deSocket_destroy()
412 deSocketState deSocket_getState (const deSocket* sock) in deSocket_getState() argument
414 return sock->state; in deSocket_getState()
417 deUint32 deSocket_getOpenChannels (const deSocket* sock) in deSocket_getOpenChannels() argument
419 return sock->openChannels; in deSocket_getOpenChannels()
422 deBool deSocket_setFlags (deSocket* sock, deUint32 flags) in deSocket_setFlags() argument
424 deSocketHandle fd = sock->handle; in deSocket_setFlags()
426 if (sock->state == DE_SOCKETSTATE_CLOSED) in deSocket_setFlags()
470 deBool deSocket_listen (deSocket* sock, const deSocketAddress* address) in deSocket_listen() argument
477 if (sock->state != DE_SOCKETSTATE_CLOSED) in deSocket_listen()
485sock->handle = socket(bsdAddr->sa_family, deSocketTypeToBsdType(address->type), deSocketProtocolTo… in deSocket_listen()
486 if (!deSocketHandleIsValid(sock->handle)) in deSocket_listen()
489 sock->state = DE_SOCKETSTATE_DISCONNECTED; in deSocket_listen()
494 setsockopt(sock->handle, SOL_SOCKET, SO_REUSEADDR, (const char*)&reuseVal, (int)sizeof(reuseVal)); in deSocket_listen()
498 if (bind(sock->handle, bsdAddr, bsdAddrLen) != 0) in deSocket_listen()
500 deSocket_close(sock); in deSocket_listen()
505 if (listen(sock->handle, backlogSize) != 0) in deSocket_listen()
507 deSocket_close(sock); in deSocket_listen()
511 sock->state = DE_SOCKETSTATE_LISTENING; in deSocket_listen()
516 deSocket* deSocket_accept (deSocket* sock, deSocketAddress* clientAddress) in deSocket_accept() argument
531 newFd = accept(sock->handle, bsdAddr, &bsdAddrLen); in deSocket_accept()
533 newFd = accept(sock->handle, bsdAddr, (socklen_t*)&bsdAddrLen); in deSocket_accept()
560 deBool deSocket_connect (deSocket* sock, const deSocketAddress* address) in deSocket_connect() argument
571sock->handle = socket(bsdAddr->sa_family, deSocketTypeToBsdType(address->type), deSocketProtocolTo… in deSocket_connect()
572 if (!deSocketHandleIsValid(sock->handle)) in deSocket_connect()
576 if (connect(sock->handle, bsdAddr, bsdAddrLen) != 0) in deSocket_connect()
579 closesocket(sock->handle); in deSocket_connect()
581 close(sock->handle); in deSocket_connect()
583 sock->handle = DE_INVALID_SOCKET_HANDLE; in deSocket_connect()
587 sock->state = DE_SOCKETSTATE_CONNECTED; in deSocket_connect()
588 sock->openChannels = DE_SOCKETCHANNEL_BOTH; in deSocket_connect()
593 deBool deSocket_shutdown (deSocket* sock, deUint32 channels) in deSocket_shutdown() argument
597 deMutex_lock(sock->stateLock); in deSocket_shutdown()
599 if (sock->state == DE_SOCKETSTATE_DISCONNECTED || in deSocket_shutdown()
600 sock->state == DE_SOCKETSTATE_CLOSED) in deSocket_shutdown()
602 deMutex_unlock(sock->stateLock); in deSocket_shutdown()
609 channels &= sock->openChannels; in deSocket_shutdown()
613 deMutex_unlock(sock->stateLock); in deSocket_shutdown()
628 if (shutdown(sock->handle, how) == 0) in deSocket_shutdown()
639 deMutex_unlock(sock->stateLock); in deSocket_shutdown()
655 if (shutdown(sock->handle, how) == 0) in deSocket_shutdown()
663 deMutex_unlock(sock->stateLock); in deSocket_shutdown()
670 sock->openChannels &= ~closedChannels; in deSocket_shutdown()
671 if (sock->openChannels == 0) in deSocket_shutdown()
672 sock->state = DE_SOCKETSTATE_DISCONNECTED; in deSocket_shutdown()
674 deMutex_unlock(sock->stateLock); in deSocket_shutdown()
678 deBool deSocket_close (deSocket* sock) in deSocket_close() argument
680 deMutex_lock(sock->stateLock); in deSocket_close()
682 if (sock->state == DE_SOCKETSTATE_CLOSED) in deSocket_close()
684 deMutex_unlock(sock->stateLock); in deSocket_close()
689 if (sock->state == DE_SOCKETSTATE_LISTENING) in deSocket_close()
692 shutdown(sock->handle, SHUT_RDWR); in deSocket_close()
697 if (closesocket(sock->handle) != 0) in deSocket_close()
700 if (close(sock->handle) != 0) in deSocket_close()
703 sock->state = DE_SOCKETSTATE_CLOSED; in deSocket_close()
704 sock->handle = DE_INVALID_SOCKET_HANDLE; in deSocket_close()
705 sock->openChannels = 0; in deSocket_close()
707 deMutex_unlock(sock->stateLock); in deSocket_close()
743 DE_INLINE void deSocket_setChannelsClosed (deSocket* sock, deUint32 channels) in deSocket_setChannelsClosed() argument
745 deMutex_lock(sock->stateLock); in deSocket_setChannelsClosed()
747 sock->openChannels &= ~channels; in deSocket_setChannelsClosed()
748 if (sock->openChannels == 0) in deSocket_setChannelsClosed()
749 sock->state = DE_SOCKETSTATE_DISCONNECTED; in deSocket_setChannelsClosed()
751 deMutex_unlock(sock->stateLock); in deSocket_setChannelsClosed()
754 deSocketResult deSocket_send (deSocket* sock, const void* buf, int bufSize, int* numSentPtr) in deSocket_send() argument
756 int numSent = (int)send(sock->handle, (const char*)buf, bufSize, 0); in deSocket_send()
764 deSocket_setChannelsClosed(sock, DE_SOCKETCHANNEL_SEND); in deSocket_send()
766 deSocket_setChannelsClosed(sock, DE_SOCKETCHANNEL_BOTH); in deSocket_send()
771 deSocketResult deSocket_receive (deSocket* sock, void* buf, int bufSize, int* numReceivedPtr) in deSocket_receive() argument
773 int numRecv = (int)recv(sock->handle, (char*)buf, bufSize, 0); in deSocket_receive()
781 deSocket_setChannelsClosed(sock, DE_SOCKETCHANNEL_RECEIVE); in deSocket_receive()
783 deSocket_setChannelsClosed(sock, DE_SOCKETCHANNEL_BOTH); in deSocket_receive()