#include "io_socket_p.h"
#include <gwenhywfar/iolayer_be.h>
#include <gwenhywfar/iorequest_be.h>
#include "i18n_l.h"
#include <gwenhywfar/misc.h>
#include <gwenhywfar/debug.h>
#include <gwenhywfar/gui.h>
#include <gwenhywfar/text.h>
#include <assert.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
Go to the source code of this file.
void GWEN_Io_LayerSocket_AbortRequests | ( | GWEN_IO_LAYER * | io, | |
int | errorCode | |||
) |
Definition at line 164 of file io_socket.c.
References GWEN_INHERIT_GETDATA, GWEN_Io_Request_Finished(), GWEN_Io_Request_free(), GWEN_Io_Request_StatusFinished, and NULL.
Referenced by GWEN_Io_LayerSocket_AddRequest(), GWEN_Io_LayerSocket_DelRequest(), GWEN_Io_LayerSocket_freeData(), and GWEN_Io_LayerSocket_WorkOnRequests().
int GWEN_Io_LayerSocket_AddRequest | ( | GWEN_IO_LAYER * | io, | |
GWEN_IO_REQUEST * | r | |||
) |
Definition at line 408 of file io_socket.c.
References DBG_INFO, GWEN_ERROR_ABORTED, GWEN_ERROR_IN_PROGRESS, GWEN_ERROR_INVALID, GWEN_ERROR_NOT_OPEN, GWEN_ERROR_NOT_SUPPORTED, GWEN_ERROR_TRY_AGAIN, GWEN_InetAddr_GetAddress(), GWEN_InetAddr_GetPort(), GWEN_INHERIT_GETDATA, GWEN_IO_LAYER_FLAGS_DONTCLOSE, GWEN_IO_LAYER_FLAGS_PASSIVE, GWEN_Io_Layer_GetFlags(), GWEN_Io_Layer_GetStatus(), GWEN_Io_Layer_SetStatus(), GWEN_Io_Layer_StatusConnected, GWEN_Io_Layer_StatusConnecting, GWEN_Io_Layer_StatusDisconnected, GWEN_Io_Layer_StatusUnconnected, GWEN_Io_Layer_SubFlags(), GWEN_Io_LayerSocket_AbortRequests(), GWEN_Io_Request_Attach(), GWEN_Io_Request_Finished(), GWEN_IO_REQUEST_FLAGS_FORCE, GWEN_Io_Request_GetFlags(), GWEN_Io_Request_GetType(), GWEN_Io_Request_StatusFinished, GWEN_Io_Request_TypeConnect, GWEN_Io_Request_TypeDisconnect, GWEN_Io_Request_TypeRead, GWEN_Io_Request_TypeWrite, GWEN_LOGDOMAIN, GWEN_Socket_Close(), GWEN_Socket_Connect(), GWEN_Socket_Open(), GWEN_Socket_SetBlocking(), and NULL.
Referenced by GWEN_Io_LayerSocket_new().
int GWEN_Io_LayerSocket_AddWaitingSockets | ( | GWEN_IO_LAYER * | io, | |
GWEN_SOCKET_LIST2 * | readSockets, | |||
GWEN_SOCKET_LIST2 * | writeSockets | |||
) |
Definition at line 660 of file io_socket.c.
References GWEN_INHERIT_GETDATA, GWEN_Io_Layer_GetStatus(), GWEN_Io_Layer_StatusListening, and GWEN_Socket_List2_PushBack().
Referenced by GWEN_Io_LayerSocket_new().
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerSocket_CheckForIncoming | ( | GWEN_IO_LAYER * | io | ) |
Definition at line 199 of file io_socket.c.
References DBG_INFO, GWEN_ERROR_INTERRUPTED, GWEN_ERROR_TIMEOUT, GWEN_InetAddr_free(), GWEN_InetAddr_GetAddress(), GWEN_InetAddr_GetPort(), GWEN_INHERIT_GETDATA, GWEN_Io_Layer_AddFlags(), GWEN_Io_Layer_AddIncomingLayer(), GWEN_IO_LAYER_FLAGS_PASSIVE, GWEN_IO_LAYER_FLAGS_TAKEOVER, GWEN_Io_Layer_GetStatus(), GWEN_Io_Layer_SetStatus(), GWEN_Io_Layer_StatusConnected, GWEN_Io_Layer_StatusDisconnected, GWEN_Io_Layer_StatusListening, GWEN_Io_Layer_WorkResultBlocking, GWEN_Io_Layer_WorkResultOk, GWEN_Io_LayerSocket_new(), GWEN_Io_LayerSocket_SetLocalAddr(), GWEN_Io_LayerSocket_SetPeerAddr(), GWEN_LOGDOMAIN, GWEN_Socket_Accept(), GWEN_Socket_Close(), GWEN_Socket_free(), GWEN_Socket_SetBlocking(), and NULL.
Referenced by GWEN_Io_LayerSocket_WorkOnRequests().
int GWEN_Io_LayerSocket_DelRequest | ( | GWEN_IO_LAYER * | io, | |
GWEN_IO_REQUEST * | r | |||
) |
Definition at line 585 of file io_socket.c.
References DBG_DEBUG, DBG_INFO, GWEN_ERROR_ABORTED, GWEN_ERROR_INVALID, GWEN_INHERIT_GETDATA, GWEN_IO_LAYER_FLAGS_DONTCLOSE, GWEN_Io_Layer_GetFlags(), GWEN_Io_Layer_SetStatus(), GWEN_Io_Layer_StatusDisconnected, GWEN_Io_LayerSocket_AbortRequests(), GWEN_Io_Request_Finished(), GWEN_Io_Request_free(), GWEN_Io_Request_GetType(), GWEN_Io_Request_StatusFinished, GWEN_Io_Request_TypeConnect, GWEN_Io_Request_TypeRead, GWEN_Io_Request_TypeWrite, GWEN_LOGDOMAIN, GWEN_Socket_Close(), and NULL.
Referenced by GWEN_Io_LayerSocket_new().
GWENHYWFAR_CB void GWEN_Io_LayerSocket_freeData | ( | void * | bp, | |
void * | p | |||
) |
Definition at line 71 of file io_socket.c.
References GWEN_ERROR_ABORTED, GWEN_FREE_OBJECT, GWEN_IO_LAYER_FLAGS_DONTCLOSE, GWEN_IO_LAYER_FLAGS_TAKEOVER, GWEN_Io_Layer_GetFlags(), GWEN_Io_LayerSocket_AbortRequests(), GWEN_Socket_Close(), and GWEN_Socket_free().
Referenced by GWEN_Io_LayerSocket_new().
int GWEN_Io_LayerSocket_HasWaitingRequests | ( | GWEN_IO_LAYER * | io | ) |
Definition at line 645 of file io_socket.c.
References GWEN_INHERIT_GETDATA.
Referenced by GWEN_Io_LayerSocket_new().
int GWEN_Io_LayerSocket_Listen | ( | GWEN_IO_LAYER * | io | ) |
Definition at line 679 of file io_socket.c.
References DBG_INFO, DBG_NOTICE, GWEN_InetAddr_GetAddress(), GWEN_InetAddr_GetPort(), GWEN_INHERIT_GETDATA, GWEN_Io_Layer_SetStatus(), GWEN_Io_Layer_StatusListening, GWEN_LOGDOMAIN, GWEN_Socket_Bind(), GWEN_Socket_Close(), GWEN_Socket_Listen(), GWEN_Socket_Open(), GWEN_Socket_SetBlocking(), and GWEN_Socket_SetReuseAddress().
Referenced by GWEN_Io_LayerSocket_new().
GWEN_IO_LAYER_WORKRESULT GWEN_Io_LayerSocket_WorkOnRequests | ( | GWEN_IO_LAYER * | io | ) |
Definition at line 261 of file io_socket.c.
References DBG_INFO, DBG_VERBOUS, GWEN_ERROR_ABORTED, GWEN_ERROR_EOF, GWEN_ERROR_INTERRUPTED, GWEN_ERROR_IO, GWEN_ERROR_TIMEOUT, GWEN_InetAddr_GetAddress(), GWEN_InetAddr_GetPort(), GWEN_INHERIT_GETDATA, GWEN_Io_Layer_SetStatus(), GWEN_Io_Layer_StatusConnected, GWEN_Io_Layer_StatusDisconnected, GWEN_Io_Layer_WorkResultBlocking, GWEN_Io_Layer_WorkResultOk, GWEN_Io_LayerSocket_AbortRequests(), GWEN_Io_LayerSocket_CheckForIncoming(), GWEN_Io_Request_Finished(), GWEN_IO_REQUEST_FLAGS_READALL, GWEN_IO_REQUEST_FLAGS_WRITEALL, GWEN_Io_Request_free(), GWEN_Io_Request_GetBufferPos(), GWEN_Io_Request_GetBufferPtr(), GWEN_Io_Request_GetBufferSize(), GWEN_Io_Request_GetFlags(), GWEN_Io_Request_SetBufferPos(), GWEN_Io_Request_StatusFinished, GWEN_LOGDOMAIN, GWEN_Socket_GetSocketError(), GWEN_Socket_Read(), GWEN_Socket_Write(), and NULL.
Referenced by GWEN_Io_LayerSocket_new().