From: Guilhem Lavaux Date: Mon, 6 Sep 1999 19:06:46 +0000 (+0000) Subject: Moved gsockunx.h from src/unix to include/wx/unix X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/533c7161fc06f3e78f977a5b0692150213fa2f7e Moved gsockunx.h from src/unix to include/wx/unix Added include/wx/unix/gsockunx.h to Makefile.in git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/Makefile.in b/Makefile.in index 146932dbd4..dee09687b7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -516,7 +516,8 @@ MSW_HEADERS = \ msw/xpmhand.h UNIX_HEADERS = \ - unix/execute.h + unix/execute.h \ + unix/gsockunx.h GENERIC_HEADERS = \ generic/caret.h \ diff --git a/include/wx/unix/gsockunx.h b/include/wx/unix/gsockunx.h new file mode 100644 index 0000000000..2981d1293f --- /dev/null +++ b/include/wx/unix/gsockunx.h @@ -0,0 +1,87 @@ +/* ------------------------------------------------------------------------- + * Project: GSocket (Generic Socket) for WX + * Name: gsockunx.h + * Purpose: GSocket Unix header + * CVSID: $Id$ + * ------------------------------------------------------------------------- + */ +#ifndef __GSOCK_UNX_H +#define __GSOCK_UNX_H + +#include "wx/setup.h" + +#if wxUSE_SOCKETS + +#include "wx/gsocket.h" + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + + +/* Definition of GSocket */ +struct _GSocket { + int m_fd; + GAddress *m_local, *m_peer; + GSocketError m_error; + + bool m_non_blocking, m_server, m_stream, m_oriented; + bool m_establishing; + unsigned long m_timeout; + + /* Callbacks */ + GSocketCallback m_cbacks[GSOCK_MAX_EVENT]; + char *m_data[GSOCK_MAX_EVENT]; + + /* IO calls associated */ + bool m_iocalls[GSOCK_MAX_EVENT]; + + char *m_gui_dependent; +}; + +/* Definition of GAddress */ +struct _GAddress { + struct sockaddr *m_addr; + size_t m_len; + + GAddressType m_family; + int m_realfamily; + + GSocketError m_error; +}; + +void _GSocket_Enable(GSocket *socket, GSocketEvent event); +void _GSocket_Disable(GSocket *socket, GSocketEvent event); +int _GSocket_Recv_Stream(GSocket *socket, char *buffer, int size); +int _GSocket_Recv_Dgram(GSocket *socket, char *buffer, int size); +int _GSocket_Send_Stream(GSocket *socket, const char *buffer, int size); +int _GSocket_Send_Dgram(GSocket *socket, const char *buffer, int size); +void _GSocket_Install_Callback(GSocket *socket, GSocketEvent count); +void _GSocket_Uninstall_Callback(GSocket *socket, GSocketEvent count); +void _GSocket_Detected_Read(GSocket *socket); +void _GSocket_Detected_Write(GSocket *socket); +void _GSocket_GUI_Init(GSocket *socket); +void _GSocket_GUI_Destroy(GSocket *socket); + +/* Translaters returns false when memory is exhausted */ +GSocketError _GAddress_translate_from(GAddress *address, + struct sockaddr *addr, int len); +GSocketError _GAddress_translate_to(GAddress *address, + struct sockaddr **addr, int *len); + +/* Initialisers returns FALSE when an error happened in the initialisation */ + +/* Internet address family */ +GSocketError _GAddress_Init_INET(GAddress *address); +/* Local address family */ +GSocketError _GAddress_Init_UNIX(GAddress *address); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif + /* wxUSE_SOCKETS */ + +#endif + /* __GSOCK_UNX_H */ diff --git a/src/unix/gsocket.c b/src/unix/gsocket.c index de516f4506..3174b57a7a 100644 --- a/src/unix/gsocket.c +++ b/src/unix/gsocket.c @@ -43,7 +43,7 @@ #include #include "wx/gsocket.h" -#include "gsockunx.h" +#include "wx/unix/gsockunx.h" #ifndef SOCKLEN_T @@ -161,9 +161,7 @@ void GSocket_Shutdown(GSocket *socket) /* If socket has been created, we shutdown it */ if (socket->m_fd != -1) { - /* Only oriented connection should be shutdowned */ - if (socket->m_oriented) - shutdown(socket->m_fd, 2); + shutdown(socket->m_fd, 2); close(socket->m_fd); socket->m_fd = -1; } diff --git a/src/unix/gsockunx.h b/src/unix/gsockunx.h deleted file mode 100644 index 2981d1293f..0000000000 --- a/src/unix/gsockunx.h +++ /dev/null @@ -1,87 +0,0 @@ -/* ------------------------------------------------------------------------- - * Project: GSocket (Generic Socket) for WX - * Name: gsockunx.h - * Purpose: GSocket Unix header - * CVSID: $Id$ - * ------------------------------------------------------------------------- - */ -#ifndef __GSOCK_UNX_H -#define __GSOCK_UNX_H - -#include "wx/setup.h" - -#if wxUSE_SOCKETS - -#include "wx/gsocket.h" - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - - -/* Definition of GSocket */ -struct _GSocket { - int m_fd; - GAddress *m_local, *m_peer; - GSocketError m_error; - - bool m_non_blocking, m_server, m_stream, m_oriented; - bool m_establishing; - unsigned long m_timeout; - - /* Callbacks */ - GSocketCallback m_cbacks[GSOCK_MAX_EVENT]; - char *m_data[GSOCK_MAX_EVENT]; - - /* IO calls associated */ - bool m_iocalls[GSOCK_MAX_EVENT]; - - char *m_gui_dependent; -}; - -/* Definition of GAddress */ -struct _GAddress { - struct sockaddr *m_addr; - size_t m_len; - - GAddressType m_family; - int m_realfamily; - - GSocketError m_error; -}; - -void _GSocket_Enable(GSocket *socket, GSocketEvent event); -void _GSocket_Disable(GSocket *socket, GSocketEvent event); -int _GSocket_Recv_Stream(GSocket *socket, char *buffer, int size); -int _GSocket_Recv_Dgram(GSocket *socket, char *buffer, int size); -int _GSocket_Send_Stream(GSocket *socket, const char *buffer, int size); -int _GSocket_Send_Dgram(GSocket *socket, const char *buffer, int size); -void _GSocket_Install_Callback(GSocket *socket, GSocketEvent count); -void _GSocket_Uninstall_Callback(GSocket *socket, GSocketEvent count); -void _GSocket_Detected_Read(GSocket *socket); -void _GSocket_Detected_Write(GSocket *socket); -void _GSocket_GUI_Init(GSocket *socket); -void _GSocket_GUI_Destroy(GSocket *socket); - -/* Translaters returns false when memory is exhausted */ -GSocketError _GAddress_translate_from(GAddress *address, - struct sockaddr *addr, int len); -GSocketError _GAddress_translate_to(GAddress *address, - struct sockaddr **addr, int *len); - -/* Initialisers returns FALSE when an error happened in the initialisation */ - -/* Internet address family */ -GSocketError _GAddress_Init_INET(GAddress *address); -/* Local address family */ -GSocketError _GAddress_Init_UNIX(GAddress *address); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif - /* wxUSE_SOCKETS */ - -#endif - /* __GSOCK_UNX_H */