X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9bf10d6bd3df0d5ad9d9849f162b17a62c3ac51f..c16471b6e8b08bd7d02c4c4988a06f46b83634e1:/include/wx/gsocket.h diff --git a/include/wx/gsocket.h b/include/wx/gsocket.h index 14dc3c609f..5cd91ae001 100644 --- a/include/wx/gsocket.h +++ b/include/wx/gsocket.h @@ -1,7 +1,7 @@ /* ------------------------------------------------------------------------- * Project: GSocket (Generic Socket) * Name: gsocket.h - * Author: Guilhem Lavaux + * Author: Guilhem Lavaux * Guillermo Rodriguez Garcia (maintainer) * Purpose: GSocket include file (system independent) * CVSID: $Id$ @@ -13,26 +13,33 @@ #ifndef __GSOCKET_STANDALONE__ #include "wx/setup.h" + +/* kludge for GTK.. gsockgtk.c craps out miserably if we include + defs.h ... no idea how other files get away with it.. */ + +#if !defined( __WXMSW__ ) && !defined( WXDLLEXPORT ) +#define WXDLLEXPORT +#endif + #endif #if wxUSE_SOCKETS || defined(__GSOCKET_STANDALONE__) #include -#include - -#if !defined(__cplusplus) -typedef unsigned int bool; -#endif -#ifndef TRUE -#define TRUE 1 +/* + Including sys/types.h under cygwin results in the warnings about "fd_set + having been defined in sys/types.h" when winsock.h is included later and + doesn't seem to be necessary anyhow. It's not needed under Mac neither. + */ +#if !defined(__WXMAC__) && !defined(__CYGWIN__) && !defined(__WXWINCE__) +#include #endif -#ifndef FALSE -#define FALSE 0 +#ifdef __WXWINCE__ +#include #endif - #ifdef __cplusplus extern "C" { #endif @@ -91,15 +98,15 @@ typedef void (*GSocketCallback)(GSocket *socket, GSocketEvent event, /* Global initializers */ /* GSocket_Init() must be called at the beginning */ -bool GSocket_Init(); +int GSocket_Init(void); /* GSocket_Cleanup() must be called at the end */ -void GSocket_Cleanup(); +void GSocket_Cleanup(void); /* Constructors / Destructors */ -GSocket *GSocket_new(); +GSocket *GSocket_new(void); void GSocket_destroy(GSocket *socket); @@ -137,11 +144,11 @@ GAddress *GSocket_GetPeer(GSocket *socket); * Sets up this socket as a server. The local address must have been * set with GSocket_SetLocal() before GSocket_SetServer() is called. * Returns GSOCK_NOERROR on success, one of the following otherwise: - * + * * Error codes: * GSOCK_INVSOCK - the socket is in use. * GSOCK_INVADDR - the local address has not been set. - * GSOCK_IOERR - low-level error. + * GSOCK_IOERR - low-level error. */ GSocketError GSocket_SetServer(GSocket *socket); @@ -155,7 +162,7 @@ GSocketError GSocket_SetServer(GSocket *socket); * GSOCK_TIMEDOUT - timeout, no incoming connections. * GSOCK_WOULDBLOCK - the call would block and the socket is nonblocking. * GSOCK_MEMERR - couldn't allocate memory. - * GSOCK_IOERR - low-level error. + * GSOCK_IOERR - low-level error. */ GSocket *GSocket_WaitConnection(GSocket *socket); @@ -183,7 +190,7 @@ GSocket *GSocket_WaitConnection(GSocket *socket); * GSOCK_TIMEDOUT - timeout, the connection failed. * GSOCK_WOULDBLOCK - connection in progress (nonblocking sockets only) * GSOCK_MEMERR - couldn't allocate memory. - * GSOCK_IOERR - low-level error. + * GSOCK_IOERR - low-level error. */ GSocketError GSocket_Connect(GSocket *socket, GSocketStream stream); @@ -199,7 +206,7 @@ GSocketError GSocket_Connect(GSocket *socket, GSocketStream stream); * Error codes: * GSOCK_INVSOCK - the socket is in use. * GSOCK_INVADDR - the local address has not been set. - * GSOCK_IOERR - low-level error. + * GSOCK_IOERR - low-level error. */ GSocketError GSocket_SetNonOriented(GSocket *socket); @@ -231,7 +238,7 @@ GSocketEventFlags GSocket_Select(GSocket *socket, GSocketEventFlags flags); * Sets the socket to non-blocking mode. All IO calls will return * immediately. */ -void GSocket_SetNonBlocking(GSocket *socket, bool non_block); +void GSocket_SetNonBlocking(GSocket *socket, int non_block); /* GSocket_SetTimeout: * Sets the timeout for blocking calls. Time is expressed in @@ -244,7 +251,7 @@ void GSocket_SetTimeout(GSocket *socket, unsigned long millisec); * operations do not clear this back to GSOCK_NOERROR, so use it only * after an error. */ -GSocketError GSocket_GetError(GSocket *socket); +GSocketError WXDLLEXPORT GSocket_GetError(GSocket *socket); /* Callbacks */ @@ -254,7 +261,7 @@ GSocketError GSocket_GetError(GSocket *socket); * operation, there is still data available, the callback function will * be called again. * GSOCK_OUTPUT: - * The socket is available for writing. That is, the next write call + * The socket is available for writing. That is, the next write call * won't block. This event is generated only once, when the connection is * first established, and then only if a call failed with GSOCK_WOULDBLOCK, * when the output buffer empties again. This means that the app should @@ -289,7 +296,7 @@ void GSocket_UnsetCallback(GSocket *socket, GSocketEventFlags flags); /* GAddress */ -GAddress *GAddress_new(); +GAddress *GAddress_new(void); GAddress *GAddress_copy(GAddress *address); void GAddress_destroy(GAddress *address); @@ -320,7 +327,7 @@ GSocketError GAddress_UNIX_SetPath(GAddress *address, const char *path); GSocketError GAddress_UNIX_GetPath(GAddress *address, char *path, size_t sbuf); #ifdef __cplusplus -}; +} #endif /* __cplusplus */