/* -------------------------------------------------------------------------
- * Project: GSocket (Generic Socket)
- * Name: gsocket.h
- * Author: Guilhem Lavaux
- * Guillermo Rodriguez Garcia <guille@iies.es> (maintainer)
- * Purpose: GSocket include file (system independent)
- * CVSID: $Id$
+ * Project: GSocket (Generic Socket)
+ * Name: gsocket.h
+ * Author: Guilhem Lavaux
+ * Guillermo Rodriguez Garcia <guille@iies.es> (maintainer)
+ * Copyright: (c) Guilhem Lavaux
+ * Licence: wxWindows Licence
+ * Purpose: GSocket include file (system independent)
+ * CVSID: $Id$
* -------------------------------------------------------------------------
*/
#define __GSOCKET_H
#ifndef __GSOCKET_STANDALONE__
-#include "wx/setup.h"
-#include "wx/platform.h"
+#include "wx/defs.h"
#include "wx/dlimpexp.h" /* for WXDLLIMPEXP_NET */
GSOCK_WOULDBLOCK,
GSOCK_TIMEDOUT,
GSOCK_MEMERR,
- GSOCK_OPTERR,
+ GSOCK_OPTERR
} GSocketError;
/* See below for an explanation on how events work.
class GSocketGUIFunctionsTable
{
public:
+ // needed since this class declares virtual members
+ virtual ~GSocketGUIFunctionsTable() { }
virtual bool OnInit() = 0;
virtual void OnExit() = 0;
virtual bool CanUseEventLoop() = 0;
/* Sets GUI functions callbacks. Must be called *before* GSocket_Init
if the app uses async sockets. */
-void GSocket_SetGUIFunctions(struct GSocketGUIFunctionsTable *guifunc);
+void GSocket_SetGUIFunctions(GSocketGUIFunctionsTable *guifunc);
/* GSocket_Init() must be called at the beginning */
int GSocket_Init(void);
*/
GSocketError GAddress_INET_SetHostName(GAddress *address, const char *hostname);
+GSocketError GAddress_INET_SetBroadcastAddress(GAddress *address);
GSocketError GAddress_INET_SetAnyAddress(GAddress *address);
GSocketError GAddress_INET_SetHostAddress(GAddress *address,
unsigned long hostaddr);
unsigned long GAddress_INET_GetHostAddress(GAddress *address);
unsigned short GAddress_INET_GetPort(GAddress *address);
-/* TODO: Define specific parts (INET6, UNIX) */
+#if wxUSE_IPV6
+
+GSocketError GAddress_INET6_SetHostName(GAddress *address, const char *hostname);
+GSocketError GAddress_INET6_SetAnyAddress(GAddress *address);
+GSocketError GAddress_INET6_SetHostAddress(GAddress *address,
+ struct in6_addr hostaddr);
+GSocketError GAddress_INET6_SetPortName(GAddress *address, const char *port,
+ const char *protocol);
+GSocketError GAddress_INET6_SetPort(GAddress *address, unsigned short port);
+
+GSocketError GAddress_INET6_GetHostName(GAddress *address, char *hostname,
+ size_t sbuf);
+GSocketError GAddress_INET6_GetHostAddress(GAddress *address,struct in6_addr *hostaddr);
+unsigned short GAddress_INET6_GetPort(GAddress *address);
+
+#endif // wxUSE_IPV6
+
+/* TODO: Define specific parts (UNIX) */
GSocketError GAddress_UNIX_SetPath(GAddress *address, const char *path);
GSocketError GAddress_UNIX_GetPath(GAddress *address, char *path, size_t sbuf);
# if defined(__WINDOWS__)
# include "wx/msw/gsockmsw.h"
-# elif defined(__WXMAC__) && !defined(__DARWIN__)
-# include "wx/mac/gsockmac.h"
# else
# include "wx/unix/gsockunx.h"
# endif