diff --git a/src/xpdev/sockwrap.h b/src/xpdev/sockwrap.h
index fcfc63f66b6c20d1a4e3c1fa29d5c3e8bf70d859..da2713ffcde64744acd59f23da91bd39f4d22da7 100644
--- a/src/xpdev/sockwrap.h
+++ b/src/xpdev/sockwrap.h
@@ -30,6 +30,7 @@
 #if defined(_WIN32)	/* Use WinSock */
 typedef const char* socket_send_buffer_t;
 typedef char* socket_recv_buffer_t;
+typedef u_long* socket_ioctl_ptr_t;
 
 #ifndef _WINSOCKAPI_
 	#include <winsock2.h>	/* socket/bind/etc. */
@@ -54,6 +55,7 @@ typedef char* socket_recv_buffer_t;
 #elif defined __unix__		/* Unix-variant */
 typedef const void* socket_send_buffer_t;
 typedef void* socket_recv_buffer_t;
+typedef int socket_ioctl_ptr_t;
 
 #include <netdb.h>			/* gethostbyname */
 #include <sys/types.h>		/* For u_int32_t on FreeBSD */