#include <gwenhywfar/list2.h>
#include <gwenhywfar/iolayer.h>
Go to the source code of this file.
#define GWEN_IO_REQUEST_FLAGS_FLUSH 0x80000000 |
Definition at line 38 of file iorequest.h.
Referenced by GWEN_DB_WriteToBuffer(), GWEN_HttpSession_SendPacket(), GWEN_Io_Layer_FlushRecursively(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerBuffered_WriteLine(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_WorkOnWriteRequests(), and GWEN_IpcManager__SendMsg().
#define GWEN_IO_REQUEST_FLAGS_FORCE 0x01000000 |
This flag is used with disconnect requests. If set then the connection is closed in any case and all enqueued requests for that connection are aborted. If this flag is not set then a disconnect request will fail while there are read/write/accept requests.
Definition at line 45 of file iorequest.h.
Referenced by GWEN_DB_ReadFileAs(), GWEN_DB_ReadFromFd(), GWEN_DB_ReadFromString(), GWEN_DB_WriteToBuffer(), GWEN_DB_WriteToFd(), GWEN_DBIO_ExportToBuffer(), GWEN_DBIO_ExportToFile(), GWEN_DBIO_ImportFromFile(), GWEN_HttpSession_ConnectionTest(), GWEN_HttpSession_RecvPacket(), GWEN_HttpSession_SendPacket(), GWEN_Io_Layer_DisconnectRecursively(), GWEN_Io_LayerSocket_AddRequest(), GWEN_IpcManager__Work(), GWEN_IpcManager_RemoveClient(), GWEN_XML_ReadFile(), GWEN_XMLNode_fromString(), GWEN_XMLNode_toBuffer(), and GWEN_XMLNode_WriteFile().
#define GWEN_IO_REQUEST_FLAGS_PACKETBEGIN 0x10000000 |
Definition at line 34 of file iorequest.h.
Referenced by GWEN_HttpSession_SendPacket(), GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_LayerBuffered_AddRequest(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerPackets_WorkOnReadRequests(), GWEN_Io_LayerPackets_WorkOnWriteRequests(), and GWEN_IpcManager__SendMsg().
#define GWEN_IO_REQUEST_FLAGS_PACKETEND 0x20000000 |
Definition at line 35 of file iorequest.h.
Referenced by GWEN_HttpSession_SendPacket(), GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerBuffered_WriteLine(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_WorkOnReadRequests(), GWEN_Io_LayerPackets_WorkOnWriteRequests(), and GWEN_IpcManager__SendMsg().
#define GWEN_IO_REQUEST_FLAGS_READALL 0x40000000 |
Definition at line 36 of file iorequest.h.
Referenced by GWEN_Buffer__FillBuffer_IoLayer(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerMemory_AddRequest(), and GWEN_Io_LayerSocket_WorkOnRequests().
#define GWEN_IO_REQUEST_FLAGS_TAKEOVER 0x02000000 |
Definition at line 46 of file iorequest.h.
Referenced by GWEN_Io_LayerPackets_WorkOnReadRequests(), GWEN_Io_Request_free(), and GWEN_IpcManager__SendMsg().
#define GWEN_IO_REQUEST_FLAGS_WRITEALL 0x40000000 |
Definition at line 37 of file iorequest.h.
Referenced by GWEN_Io_LayerBuffered_WriteLine(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_WorkOnWriteRequests(), and GWEN_Io_LayerSocket_WorkOnRequests().
typedef struct GWEN_IO_REQUEST GWEN_IO_REQUEST |
Definition at line 17 of file iorequest.h.
typedef void(* GWEN_IO_REQUEST_FINISH_FN)(GWEN_IO_REQUEST *r, void *user_data) |
Definition at line 70 of file iorequest.h.
GWEN_Io_Request_StatusFree | |
GWEN_Io_Request_StatusEnqueued | |
GWEN_Io_Request_StatusFinished |
Definition at line 61 of file iorequest.h.
enum GWEN_IO_REQUEST_TYPE |
GWEN_Io_Request_TypeUnknown | |
GWEN_Io_Request_TypeConnect | |
GWEN_Io_Request_TypeDisconnect | |
GWEN_Io_Request_TypeRead | |
GWEN_Io_Request_TypeWrite |
Definition at line 51 of file iorequest.h.
GWENHYWFAR_API void GWEN_Io_Request_AddFlags | ( | GWEN_IO_REQUEST * | r, | |
uint32_t | f | |||
) |
Definition at line 142 of file iorequest.c.
Referenced by GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_LayerBuffered_AddRequest(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_WorkOnReadRequests(), and GWEN_Io_LayerPackets_WorkOnWriteRequests().
GWENHYWFAR_API void GWEN_Io_Request_Attach | ( | GWEN_IO_REQUEST * | r | ) |
Definition at line 88 of file iorequest.c.
Referenced by GWEN_Io_LayerBuffered_AddRequest(), GWEN_Io_LayerCodec_AddRequest(), GWEN_Io_LayerFile_AddRequest(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerPackets_AddRequest(), GWEN_Io_LayerSocket_AddRequest(), and GWEN_Io_LayerTls_AddRequest().
GWENHYWFAR_API void GWEN_Io_Request_free | ( | GWEN_IO_REQUEST * | r | ) |
Definition at line 96 of file iorequest.c.
References GWEN_FREE_OBJECT, GWEN_Io_Layer_free(), GWEN_IO_REQUEST_FLAGS_TAKEOVER, and GWEN_LIST_FINI.
Referenced by GWEN_Io_Layer__WaitForRequest(), GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_LayerBuffered_AbortInRequests(), GWEN_Io_LayerBuffered_AbortOutRequests(), GWEN_Io_LayerBuffered_DelRequest(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_TryFlush(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerCodec_AbortInRequests(), GWEN_Io_LayerCodec_AbortOutRequests(), GWEN_Io_LayerCodec_AbortRequests(), GWEN_Io_LayerCodec_DelRequest(), GWEN_Io_LayerCodec_EnsureReadOk(), GWEN_Io_LayerCodec_WorkOnOutRequests(), GWEN_Io_LayerCodec_WorkOnReadRequest(), GWEN_Io_LayerCodec_WorkOnWriteRequest(), GWEN_Io_LayerFile_DelRequest(), GWEN_Io_LayerFile_freeData(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_AbortInRequests(), GWEN_Io_LayerHttp_AbortOutRequests(), GWEN_Io_LayerHttp_DelRequest(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_Abort(), GWEN_Io_LayerPackets_WorkOnReadRequests(), GWEN_Io_LayerPackets_WorkOnWriteRequests(), GWEN_Io_LayerSocket_AbortRequests(), GWEN_Io_LayerSocket_DelRequest(), GWEN_Io_LayerSocket_WorkOnRequests(), GWEN_Io_LayerTls_DelRequest(), GWEN_Io_LayerTls_WorkOnRequests(), GWEN_IpcManager__Work(), and GWEN_IpcMsg_free().
GWENHYWFAR_API uint32_t GWEN_Io_Request_GetBufferPos | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 178 of file iorequest.c.
Referenced by GWEN_Io_Layer__WaitForRequest(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerCodec_WorkOnOutRequests(), GWEN_Io_LayerCodec_WorkOnReadRequest(), GWEN_Io_LayerCodec_WorkOnWriteRequest(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerMemory_AddRequest(), GWEN_Io_LayerSocket_WorkOnRequests(), and GWEN_IpcManager__HandlePacket().
GWENHYWFAR_API uint8_t* GWEN_Io_Request_GetBufferPtr | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 160 of file iorequest.c.
Referenced by GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerCodec_WorkOnReadRequest(), GWEN_Io_LayerCodec_WorkOnWriteRequest(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerMemory_AddRequest(), GWEN_Io_LayerSocket_WorkOnRequests(), and GWEN_IpcManager__HandlePacket().
GWENHYWFAR_API uint32_t GWEN_Io_Request_GetBufferSize | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 169 of file iorequest.c.
Referenced by GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerCodec_WorkOnReadRequest(), GWEN_Io_LayerCodec_WorkOnWriteRequest(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerMemory_AddRequest(), and GWEN_Io_LayerSocket_WorkOnRequests().
GWENHYWFAR_API uint32_t GWEN_Io_Request_GetFlags | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 124 of file iorequest.c.
Referenced by GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_LayerBuffered_AddRequest(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerFile_WorkOnRequests(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerMemory_AddRequest(), GWEN_Io_LayerPackets_AddRequest(), GWEN_Io_LayerPackets_WorkOnReadRequests(), GWEN_Io_LayerSocket_AddRequest(), and GWEN_Io_LayerSocket_WorkOnRequests().
GWENHYWFAR_API uint32_t GWEN_Io_Request_GetGuiId | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 196 of file iorequest.c.
Referenced by GWEN_Io_LayerBuffered_TryFlush(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerCodec_WorkOnReadRequest(), GWEN_Io_LayerCodec_WorkOnWriteRequest(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_GetReadRequest(), GWEN_Io_LayerSocket_AddRequest(), GWEN_Io_LayerTls_Push(), GWEN_Io_LayerTls_WorkOnRequests(), and GWEN_Io_Manager_WaitForRequest().
GWENHYWFAR_API GWEN_IO_LAYER* GWEN_Io_Request_GetIncomingLayer | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 259 of file iorequest.c.
GWENHYWFAR_API GWEN_IO_LAYER* GWEN_Io_Request_GetIoLayer | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 214 of file iorequest.c.
GWENHYWFAR_API int GWEN_Io_Request_GetResultCode | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 241 of file iorequest.c.
Referenced by GWEN_Io_Layer__WaitForRequest(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerCodec_WorkOnOutRequests(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), and GWEN_Io_LayerPackets_WorkOnReadRequests().
GWENHYWFAR_API GWEN_IO_REQUEST_STATUS GWEN_Io_Request_GetStatus | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 223 of file iorequest.c.
Referenced by GWEN_Io_Layer__WaitForRequest(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerBuffered_WorkOnWriteRequest(), GWEN_Io_LayerCodec_WorkOnOutRequests(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), GWEN_Io_LayerPackets_WorkOnReadRequests(), GWEN_Io_LayerPackets_WorkOnWriteRequests(), and GWEN_Io_Manager_WaitForRequest().
GWENHYWFAR_API GWEN_IO_REQUEST_TYPE GWEN_Io_Request_GetType | ( | const GWEN_IO_REQUEST * | r | ) |
Definition at line 115 of file iorequest.c.
Referenced by GWEN_Io_Layer__WaitForRequest(), GWEN_Io_LayerBuffered_AddRequest(), GWEN_Io_LayerBuffered_DelRequest(), GWEN_Io_LayerCodec_AddRequest(), GWEN_Io_LayerCodec_DelRequest(), GWEN_Io_LayerFile_AddRequest(), GWEN_Io_LayerFile_DelRequest(), GWEN_Io_LayerHttp_AddRequest(), GWEN_Io_LayerHttp_DelRequest(), GWEN_Io_LayerMemory_AddRequest(), GWEN_Io_LayerPackets_AddRequest(), GWEN_Io_LayerPackets_DelRequest(), GWEN_Io_LayerSocket_AddRequest(), GWEN_Io_LayerSocket_DelRequest(), GWEN_Io_LayerTls_AddRequest(), GWEN_Io_LayerTls_DelRequest(), and GWEN_Io_Manager_WaitForRequest().
GWENHYWFAR_API GWEN_IO_REQUEST* GWEN_Io_Request_new | ( | GWEN_IO_REQUEST_TYPE | t, | |
uint8_t * | pBuffer, | |||
uint32_t | lBuffer, | |||
GWEN_IO_REQUEST_FINISH_FN | finishFn, | |||
void * | user_data, | |||
uint32_t | guiid | |||
) |
Definition at line 58 of file iorequest.c.
References DBG_DEBUG, GWEN_Io_RequestType_toString(), GWEN_LIST_INIT, GWEN_LOGDOMAIN, and GWEN_NEW_OBJECT.
Referenced by GWEN_Io_Layer_Connect(), GWEN_Io_Layer_Disconnect(), GWEN_Io_Layer_ReadBytes(), GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_Layer_WriteBytes(), GWEN_Io_Layer_WriteChar(), GWEN_Io_Layer_WriteString(), GWEN_Io_LayerBuffered_ReadLineToBuffer(), GWEN_Io_LayerBuffered_TryFlush(), GWEN_Io_LayerBuffered_WorkOnReadRequest(), GWEN_Io_LayerCodec_EnsureReadOk(), GWEN_Io_LayerCodec_WorkOnOutRequests(), GWEN_Io_LayerHttp_WorkOnReadRequest1(), GWEN_Io_LayerHttp_WorkOnReadRequest2(), GWEN_Io_LayerHttp_WorkOnWriteRequest1(), GWEN_Io_LayerHttp_WorkOnWriteRequest2(), and GWEN_Io_LayerPackets_WorkOnReadRequests().
GWENHYWFAR_API void GWEN_Io_Request_SetFlags | ( | GWEN_IO_REQUEST * | r, | |
uint32_t | f | |||
) |
Definition at line 133 of file iorequest.c.
Referenced by GWEN_Io_Layer_Connect(), GWEN_Io_Layer_Disconnect(), GWEN_Io_Layer_ReadBytes(), GWEN_Io_Layer_ReadPacket(), GWEN_Io_Layer_ReadPacketToBuffer(), GWEN_Io_Layer_WriteBytes(), GWEN_Io_Layer_WriteChar(), GWEN_Io_Layer_WriteString(), and GWEN_Io_LayerBuffered_WorkOnWriteRequest().
GWENHYWFAR_API void GWEN_Io_Request_SetGuiId | ( | GWEN_IO_REQUEST * | r, | |
uint32_t | i | |||
) |
Definition at line 205 of file iorequest.c.
Referenced by GWEN_Io_LayerPackets_GetReadRequest().
GWENHYWFAR_API void GWEN_Io_Request_SubFlags | ( | GWEN_IO_REQUEST * | r, | |
uint32_t | f | |||
) |
Definition at line 151 of file iorequest.c.
Referenced by GWEN_Io_LayerBuffered_WorkOnWriteRequest().
GWENHYWFAR_API GWEN_IO_LAYER* GWEN_Io_Request_TakeIncomingLayer | ( | GWEN_IO_REQUEST * | r | ) |
Definition at line 268 of file iorequest.c.
References NULL.
GWENHYWFAR_API const char* GWEN_Io_RequestStatus_toString | ( | GWEN_IO_REQUEST_STATUS | st | ) |
Definition at line 46 of file iorequest.c.
References GWEN_Io_Request_StatusEnqueued, GWEN_Io_Request_StatusFinished, and GWEN_Io_Request_StatusFree.
GWENHYWFAR_API const char* GWEN_Io_RequestType_toString | ( | GWEN_IO_REQUEST_TYPE | t | ) |
Definition at line 34 of file iorequest.c.
References GWEN_Io_Request_TypeConnect, GWEN_Io_Request_TypeDisconnect, GWEN_Io_Request_TypeRead, and GWEN_Io_Request_TypeWrite.
Referenced by GWEN_Io_LayerPackets_AddRequest(), GWEN_Io_Request_Finished(), and GWEN_Io_Request_new().