* Makefile: Build the make-map.exe in Mono.Unix.Native; add /nowarn:0618 to
[mono.git] / mono / io-layer / sockets.h
index fccd0db7611ea88c056dbefcbd5a3626d8e844de..609c100f6a9e21bdaa82e5ce224e492f564fc01b 100644 (file)
@@ -1,3 +1,12 @@
+/*
+ * sockets.h:  Socket handles
+ *
+ * Author:
+ *     Dick Porter (dick@ximian.com)
+ *
+ * (C) 2002 Ximian, Inc.
+ */
+
 #ifndef _WAPI_SOCKETS_H_
 #define _WAPI_SOCKETS_H_
 
 #include <sys/socket.h>
 #include <sys/ioctl.h>
 #include <netinet/in.h>
+#include <netinet/tcp.h>
 #include <netdb.h>
 #include <arpa/inet.h>
 
 #include "mono/io-layer/wapi.h"
 
+G_BEGIN_DECLS
+
 #define WSADESCRIPTION_LEN 256
 #define WSASYS_STATUS_LEN 128
 
@@ -24,49 +36,20 @@ typedef struct
        guchar *lpVendorInfo;
 } WapiWSAData;
 
-#define INVALID_SOCKET (WapiHandle *)-1
+#define INVALID_SOCKET (guint32)(~0)
 #define SOCKET_ERROR -1
 
 extern int WSAStartup(guint32 requested, WapiWSAData *data);
 extern int WSACleanup(void);
 extern void WSASetLastError(int error);
 extern int WSAGetLastError(void);
-extern int closesocket(WapiHandle *handle);
-
-#ifndef _WAPI_BUILDING
-#define accept _wapi_accept
-#define bind _wapi_bind
-#define connect _wapi_connect
-#define getpeername _wapi_getpeername
-#define getsockname _wapi_getsockname
-#define getsockopt _wapi_getsockopt
-#define listen _wapi_listen
-#define recv _wapi_recv
-#define recvfrom _wapi_recvfrom
-#define send _wapi_send
-#define sendto _wapi_sendto
-#define setsockopt _wapi_setsockopt
-#define shutdown _wapi_shutdown
-#define socket _wapi_socket
-#define gethostbyname _wapi_gethostbyname
-#endif /* _WAPI_BUILDING */
-
-extern WapiHandle *_wapi_accept(WapiHandle *handle, struct sockaddr *addr, socklen_t *addrlen);
-extern int _wapi_bind(WapiHandle *handle, struct sockaddr *my_addr, socklen_t addrlen);
-extern int _wapi_connect(WapiHandle *handle, const struct sockaddr *serv_addr, socklen_t addrlen);
-extern int _wapi_getpeername(WapiHandle *handle, struct sockaddr *name, socklen_t *namelen);
-extern int _wapi_getsockname(WapiHandle *handle, struct sockaddr *name, socklen_t *namelen);
-extern int _wapi_getsockopt(WapiHandle *handle, int level, int optname, void *optval, socklen_t *optlen);
-extern int _wapi_listen(WapiHandle *handle, int backlog);
-extern int _wapi_recv(WapiHandle *handle, void *buf, size_t len, int flags);
-extern int _wapi_recvfrom(WapiHandle *handle, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlen);
-extern int _wapi_send(WapiHandle *handle, const void *msg, size_t len, int flags);
-extern int _wapi_sendto(WapiHandle *handle, const void *msg, size_t len, int flags, const struct sockaddr *to, socklen_t tolen);
-extern int _wapi_setsockopt(WapiHandle *handle, int level, int optname, const void *optval, socklen_t optlen);
-extern int _wapi_shutdown(WapiHandle *handle, int how);
-extern WapiHandle *_wapi_socket(int domain, int type, int protocol);;
-extern struct hostent *_wapi_gethostbyname(const char *hostname);
+extern int closesocket(guint32 handle);
 
-extern int ioctlsocket(WapiHandle *handle, gint32 command, gpointer arg);
+extern int ioctlsocket(guint32 handle, gint32 command, gpointer arg);
+extern int WSAIoctl (guint32 handle, gint32 command,
+                    gchar *input, gint i_len,
+                    gchar *output, gint o_len, glong *written,
+                    void *unused1, void *unused2);
 
+G_END_DECLS
 #endif /* _WAPI_SOCKETS_H_ */