summaryrefslogtreecommitdiffstats
path: root/libvncclient/rfbproto.c
diff options
context:
space:
mode:
Diffstat (limited to 'libvncclient/rfbproto.c')
-rw-r--r--libvncclient/rfbproto.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/libvncclient/rfbproto.c b/libvncclient/rfbproto.c
index a7faab1..70fab19 100644
--- a/libvncclient/rfbproto.c
+++ b/libvncclient/rfbproto.c
@@ -1040,9 +1040,7 @@ InitialiseRFBConnection(rfbClient* client)
rfbProtocolVersionMsg pv;
int major,minor;
uint32_t authScheme;
-#ifdef LIBVNCSERVER_WITH_CLIENT_TLS
uint32_t subAuthScheme;
-#endif
rfbClientInitMsg ci;
/* if the connection is immediately closed, don't report anything, so
@@ -1078,6 +1076,14 @@ InitialiseRFBConnection(rfbClient* client)
DefaultSupportedMessagesUltraVNC(client);
}
+ /* UltraVNC Single Click uses minor codes 14 and 16 for the server */
+ if (major==3 && (minor==14 || minor==16)) {
+ minor = minor - 10;
+ client->minor = minor;
+ rfbClientLog("UltraVNC Single Click server detected, enabling UltraVNC specific messages\n",pv);
+ DefaultSupportedMessagesUltraVNC(client);
+ }
+
/* TightVNC uses minor codes 5 for the server */
if (major==3 && minor==5) {
rfbClientLog("TightVNC server detected, enabling TightVNC specific messages\n",pv);
@@ -1146,10 +1152,6 @@ InitialiseRFBConnection(rfbClient* client)
break;
case rfbTLS:
-#ifndef LIBVNCSERVER_WITH_CLIENT_TLS
- rfbClientLog("TLS support was not compiled in\n");
- return FALSE;
-#else
if (!HandleAnonTLSAuth(client)) return FALSE;
/* After the TLS session is established, sub auth types are expected.
* Note that all following reading/writing are through the TLS session from here.
@@ -1179,15 +1181,10 @@ InitialiseRFBConnection(rfbClient* client)
(int)subAuthScheme);
return FALSE;
}
-#endif
break;
case rfbVeNCrypt:
-#ifndef LIBVNCSERVER_WITH_CLIENT_TLS
- rfbClientLog("TLS support was not compiled in\n");
- return FALSE;
-#else
if (!HandleVeNCryptAuth(client)) return FALSE;
switch (client->subAuthScheme) {
@@ -1213,7 +1210,7 @@ InitialiseRFBConnection(rfbClient* client)
client->subAuthScheme);
return FALSE;
}
-#endif
+
break;
default: