30 const char *defaultProto,
36 const char *sProtocol=
NULL;
38 const char *addr=
NULL;
57 if (!(sProtocol && *sProtocol))
58 sProtocol=defaultProto;
63 if (!(addr && *addr)) {
70 if (!(sProtocol && *sProtocol))
75 if (strcasecmp(sProtocol,
"http")==0 ||
76 strcasecmp(sProtocol,
"https")==0) {
85 if (strcasecmp(sProtocol,
"https")==0) {
146 sProtocol?sProtocol:
"(empty)");
155 const char *defaultProto,
166 if (!(url && *url)) {
189 if (!(addr && *addr)) {
GWEN_BUFFER * GWEN_Buffer_new(char *buffer, uint32_t size, uint32_t used, int take)
void GWEN_Buffer_free(GWEN_BUFFER *bf)
char * GWEN_Buffer_GetStart(const GWEN_BUFFER *bf)
int GWEN_DB_SetCharValue(GWEN_DB_NODE *n, uint32_t flags, const char *path, const char *val)
#define GWEN_DB_FLAGS_OVERWRITE_VARS
struct GWEN_DB_NODE GWEN_DB_NODE
#define DBG_INFO(dbg_logger, format,...)
#define DBG_ERROR(dbg_logger, format,...)
#define GWEN_ERROR_INVALID
#define GWEN_ERROR_GENERIC
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
GWEN_GUI * GWEN_Gui_GetGui(void)
int GWENHYWFAR_CB GWEN_Gui_Internal_GetSyncIo(GWEN_UNUSED GWEN_GUI *gui, const char *url, const char *defaultProto, int defaultPort, GWEN_SYNCIO **pSio)
GWEN_SYNCIO * GWEN_Gui_ExtendSyncIo(const char *url, const char *defaultProto, int defaultPort, GWEN_SYNCIO *baseSio)
void GWEN_SyncIo_free(GWEN_SYNCIO *sio)
struct GWEN_SYNCIO GWEN_SYNCIO
GWEN_SYNCIO * GWEN_SyncIo_Buffered_new(GWEN_SYNCIO *baseIo)
GWEN_DB_NODE * GWEN_SyncIo_Http_GetDbCommandOut(const GWEN_SYNCIO *sio)
GWEN_SYNCIO * GWEN_SyncIo_Http_new(GWEN_SYNCIO *baseIo)
GWEN_DB_NODE * GWEN_SyncIo_Http_GetDbHeaderOut(const GWEN_SYNCIO *sio)
void GWEN_SyncIo_Socket_SetPort(GWEN_SYNCIO *sio, int i)
GWEN_SYNCIO * GWEN_SyncIo_Socket_new(GWEN_SOCKETTYPE sockType, GWEN_AddressFamily addressFamily)
void GWEN_SyncIo_Socket_SetAddress(GWEN_SYNCIO *sio, const char *s)
GWEN_SYNCIO * GWEN_SyncIo_Tls_new(GWEN_SYNCIO *baseIo)
void GWEN_SyncIo_Tls_SetRemoteHostName(GWEN_SYNCIO *sio, const char *s)
void GWEN_Url_free(GWEN_URL *st)
const char * GWEN_Url_GetProtocol(const GWEN_URL *st)
const char * GWEN_Url_GetServer(const GWEN_URL *st)
int GWEN_Url_GetPort(const GWEN_URL *st)
GWEN_URL * GWEN_Url_fromString(const char *str)
int GWEN_Url_toCommandString(const GWEN_URL *url, GWEN_BUFFER *buf)