Inherit SocketServer directly from VNCServer
This makes VNCServer a sufficiently complete interface that callers
don't need to know about the specific implementation (VNCServerST
currently). And assuming that all servers will use sockets is not
that outrageous.
diff --git a/unix/x0vncserver/XDesktop.cxx b/unix/x0vncserver/XDesktop.cxx
index 62a18a0..9a047c8 100644
--- a/unix/x0vncserver/XDesktop.cxx
+++ b/unix/x0vncserver/XDesktop.cxx
@@ -236,7 +236,7 @@
pb = new XPixelBuffer(dpy, factory, geometry->getRect());
vlog.info("Allocated %s", pb->getImage()->classDesc());
- server = (VNCServerST *)vs;
+ server = vs;
server->setPixelBuffer(pb, computeScreenLayout());
#ifdef HAVE_XDAMAGE
diff --git a/unix/x0vncserver/XDesktop.h b/unix/x0vncserver/XDesktop.h
index dc616e9..7d06061 100644
--- a/unix/x0vncserver/XDesktop.h
+++ b/unix/x0vncserver/XDesktop.h
@@ -21,7 +21,7 @@
#ifndef __XDESKTOP_H__
#define __XDESKTOP_H__
-#include <rfb/VNCServerST.h>
+#include <rfb/SDesktop.h>
#include <tx/TXWindow.h>
#include <unixcommon.h>
@@ -70,7 +70,7 @@
Display* dpy;
Geometry* geometry;
XPixelBuffer* pb;
- rfb::VNCServerST* server;
+ rfb::VNCServer* server;
QueryConnectDialog* queryConnectDialog;
network::Socket* queryConnectSock;
int oldButtonMask;