summaryrefslogtreecommitdiffstats
path: root/libvncserver
diff options
context:
space:
mode:
authorDaniel Cohen Gindi <danielgindi@gmail.com>2014-09-20 16:39:16 +0300
committerDaniel Cohen Gindi <danielgindi@gmail.com>2014-09-20 17:46:30 +0300
commitfbf48c65f343c2d3cce8ccd69975e9526f209fc5 (patch)
treec29ca641088bdd76a07d3cedf5aae66fbde6ff3c /libvncserver
parentfdf5f8876f5f4bd08aa3dc47268c1f4c4590c0bb (diff)
downloadlibtdevnc-fbf48c65f343c2d3cce8ccd69975e9526f209fc5.tar.gz
libtdevnc-fbf48c65f343c2d3cce8ccd69975e9526f209fc5.zip
`strings.h` and `resolv.h` are not available on MSVC, and some POSIX functions are renamed or deprecated
For all of those missing/deprecated POSIX functions, we just add a macro mapping to the _underscored version of MSVC.
Diffstat (limited to 'libvncserver')
-rw-r--r--libvncserver/rfbserver.c7
-rw-r--r--libvncserver/sockets.c4
-rw-r--r--libvncserver/stats.c4
-rw-r--r--libvncserver/websockets.c5
4 files changed, 19 insertions, 1 deletions
diff --git a/libvncserver/rfbserver.c b/libvncserver/rfbserver.c
index df7d74c..4056318 100644
--- a/libvncserver/rfbserver.c
+++ b/libvncserver/rfbserver.c
@@ -83,6 +83,13 @@
#include "rfbssl.h"
#endif
+#ifdef _MSC_VER
+#define snprintf _snprintf /* Missing in MSVC */
+/* Prevent POSIX deprecation warnings */
+#define close _close
+#define strdup _strdup
+#endif
+
#ifdef __MINGW32__
static int compat_mkdir(const char *path, int mode)
{
diff --git a/libvncserver/sockets.c b/libvncserver/sockets.c
index d2f814b..6c225e9 100644
--- a/libvncserver/sockets.c
+++ b/libvncserver/sockets.c
@@ -109,6 +109,10 @@ int deny_severity=LOG_WARNING;
#define closesocket close
#endif
+#ifdef _MSC_VER
+#define snprintf _snprintf /* Missing in MSVC */
+#endif
+
int rfbMaxClientWait = 20000; /* time (ms) after which we decide client has
gone away - needed to stop us hanging */
diff --git a/libvncserver/stats.c b/libvncserver/stats.c
index 39de1c6..b99da01 100644
--- a/libvncserver/stats.c
+++ b/libvncserver/stats.c
@@ -26,6 +26,10 @@
#include <rfb/rfb.h>
+#ifdef _MSC_VER
+#define snprintf _snprintf /* Missing in MSVC */
+#endif
+
char *messageNameServer2Client(uint32_t type, char *buf, int len);
char *messageNameClient2Server(uint32_t type, char *buf, int len);
char *encodingName(uint32_t enc, char *buf, int len);
diff --git a/libvncserver/websockets.c b/libvncserver/websockets.c
index bd5d9d0..34f04d7 100644
--- a/libvncserver/websockets.c
+++ b/libvncserver/websockets.c
@@ -31,10 +31,13 @@
#endif
#include <rfb/rfb.h>
-#include <resolv.h> /* __b64_ntop */
/* errno */
#include <errno.h>
+#ifndef _MSC_VER
+#include <resolv.h> /* __b64_ntop */
+#endif
+
#ifdef LIBVNCSERVER_HAVE_ENDIAN_H
#include <endian.h>
#elif LIBVNCSERVER_HAVE_SYS_ENDIAN_H