aboutsummaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2018-10-09 10:23:59 +0200
committerPierre Ossman <ossman@cendio.se>2018-10-09 10:25:17 +0200
commit4a4453fc69cf56f9991a13a62023969dcf5b8a4f (patch)
treedc89029e8a2b9976ce2f47ae5c50bdcf86bd277a /win
parent2b69d385e669bf97d872fd116c7f1da5aee7cdfd (diff)
downloadtigervnc-4a4453fc69cf56f9991a13a62023969dcf5b8a4f.tar.gz
tigervnc-4a4453fc69cf56f9991a13a62023969dcf5b8a4f.zip
Remove Java web server
Applets don't work anymore so remove everything that has to do with serving them.
Diffstat (limited to 'win')
-rw-r--r--win/rfb_win32/SDisplay.cxx15
-rw-r--r--win/rfb_win32/SDisplay.h6
-rw-r--r--win/vncconfig/Connections.h31
-rw-r--r--win/vncconfig/Legacy.cxx4
-rw-r--r--win/vncconfig/resource.h2
-rw-r--r--win/vncconfig/vncconfig.rc3
-rw-r--r--win/winvnc/CMakeLists.txt13
-rw-r--r--win/winvnc/JavaViewer.cxx107
-rw-r--r--win/winvnc/JavaViewer.h56
-rw-r--r--win/winvnc/VNCServerWin32.cxx11
-rw-r--r--win/winvnc/VNCServerWin32.h7
-rw-r--r--win/winvnc/index.vnc22
-rw-r--r--win/winvnc/resource.h1
-rw-r--r--win/winvnc/winvnc.rc (renamed from win/winvnc/winvnc.rc.in)12
14 files changed, 2 insertions, 288 deletions
diff --git a/win/rfb_win32/SDisplay.cxx b/win/rfb_win32/SDisplay.cxx
index ad55d490..9b2cbb02 100644
--- a/win/rfb_win32/SDisplay.cxx
+++ b/win/rfb_win32/SDisplay.cxx
@@ -314,21 +314,6 @@ void SDisplay::clientCutText(const char* text, int len) {
}
-Point SDisplay::getFbSize() {
- bool startAndStop = !core;
-
- // If not started, do minimal initialisation to get desktop size.
- if (startAndStop)
- recreatePixelBuffer();
- Point result = Point(pb->width(), pb->height());
-
- // Destroy the initialised structures.
- if (startAndStop)
- stopCore();
- return result;
-}
-
-
void
SDisplay::notifyClipboardChanged(const char* text, int len) {
vlog.debug("clipboard text changed");
diff --git a/win/rfb_win32/SDisplay.h b/win/rfb_win32/SDisplay.h
index f36b2b73..c1d5c1e2 100644
--- a/win/rfb_win32/SDisplay.h
+++ b/win/rfb_win32/SDisplay.h
@@ -86,12 +86,6 @@ namespace rfb {
void setStatusLocation(bool* status) {statusLocation = status;}
- // -=- Used (indirectly) by JavaViewer to get desktop size
-
- Point getFbSize();
-
- friend class SDisplayCore;
-
static IntParameter updateMethod;
static BoolParameter disableLocalInputs;
static StringParameter disconnectAction;
diff --git a/win/vncconfig/Connections.h b/win/vncconfig/Connections.h
index b3402ab4..c3d67374 100644
--- a/win/vncconfig/Connections.h
+++ b/win/vncconfig/Connections.h
@@ -27,8 +27,6 @@
#include <rfb/Blacklist.h>
#include <network/TcpSocket.h>
-static rfb::IntParameter http_port("HTTPPortNumber",
- "TCP/IP port on which the server will serve the Java applet VNC Viewer ", 5800);
static rfb::IntParameter port_number("PortNumber",
"TCP/IP port on which the server will accept connections", 5900);
static rfb::StringParameter hosts("Hosts",
@@ -96,10 +94,6 @@ namespace rfb {
setItemInt(IDC_PORT, port_number ? port_number : 5900);
setItemChecked(IDC_RFB_ENABLE, port_number != 0);
setItemInt(IDC_IDLE_TIMEOUT, rfb::Server::idleTimeout);
- vlog.debug("set IDC_HTTP_PORT %d", (int)http_port);
- setItemInt(IDC_HTTP_PORT, http_port ? http_port : 5800);
- setItemChecked(IDC_HTTP_ENABLE, http_port != 0);
- enableItem(IDC_HTTP_PORT, http_port != 0);
setItemChecked(IDC_LOCALHOST, localHost);
HWND listBox = GetDlgItem(handle, IDC_HOSTS);
@@ -133,26 +127,14 @@ namespace rfb {
return true;
case IDC_PORT:
- if (cmd == EN_CHANGE) {
- try {
- setItemInt(IDC_HTTP_PORT, rfbPortToHTTP(getItemInt(IDC_PORT)));
- } catch (...) {
- }
- }
- case IDC_HTTP_PORT:
case IDC_IDLE_TIMEOUT:
if (cmd == EN_CHANGE)
setChanged(isChanged());
return false;
- case IDC_HTTP_ENABLE:
case IDC_RFB_ENABLE:
case IDC_LOCALHOST:
{
- // HTTP port
- enableItem(IDC_HTTP_PORT, isItemChecked(IDC_HTTP_ENABLE) && isItemChecked(IDC_RFB_ENABLE));
- enableItem(IDC_HTTP_ENABLE, isItemChecked(IDC_RFB_ENABLE));
-
// RFB port
enableItem(IDC_PORT, isItemChecked(IDC_RFB_ENABLE));
@@ -245,8 +227,6 @@ namespace rfb {
bool onOk() {
regKey.setInt(_T("PortNumber"), isItemChecked(IDC_RFB_ENABLE) ? getItemInt(IDC_PORT) : 0);
regKey.setInt(_T("IdleTimeout"), getItemInt(IDC_IDLE_TIMEOUT));
- regKey.setInt(_T("HTTPPortNumber"), isItemChecked(IDC_HTTP_ENABLE) && isItemChecked(IDC_RFB_ENABLE)
- ? getItemInt(IDC_HTTP_PORT) : 0);
regKey.setInt(_T("LocalHost"), isItemChecked(IDC_LOCALHOST));
regKey.setString(_T("Hosts"), TCharArray(getHosts()).buf);
return true;
@@ -258,8 +238,6 @@ namespace rfb {
return (strcmp(new_hosts.buf, old_hosts.buf) != 0) ||
(localHost != isItemChecked(IDC_LOCALHOST)) ||
(port_number != getItemInt(IDC_PORT)) ||
- (http_port != getItemInt(IDC_HTTP_PORT)) ||
- ((http_port!=0) != (isItemChecked(IDC_HTTP_ENABLE)!=0)) ||
(rfb::Server::idleTimeout != getItemInt(IDC_IDLE_TIMEOUT));
} catch (rdr::Exception&) {
return false;
@@ -281,15 +259,6 @@ namespace rfb {
}
return strDup(hosts_str.buf);
}
- int rfbPortToHTTP(int rfbPort) {
- int offset = -100;
- if (http_port)
- offset = http_port - port_number;
- int httpPort = rfbPort + offset;
- if (httpPort <= 0)
- httpPort = rfbPort;
- return httpPort;
- }
protected:
RegKey regKey;
diff --git a/win/vncconfig/Legacy.cxx b/win/vncconfig/Legacy.cxx
index b56eb370..deba0ff3 100644
--- a/win/vncconfig/Legacy.cxx
+++ b/win/vncconfig/Legacy.cxx
@@ -192,10 +192,6 @@ void LegacyPage::LoadPrefs()
void LegacyPage::LoadUserPrefs(const RegKey& key)
{
- if (key.getBool(_T("HTTPConnect"), true))
- regKey.setInt(_T("HTTPPortNumber"), key.getInt(_T("PortNumber"), 5900)-100);
- else
- regKey.setInt(_T("HTTPPortNumber"), 0);
regKey.setInt(_T("PortNumber"), key.getBool(_T("SocketConnect")) ? key.getInt(_T("PortNumber"), 5900) : 0);
if (key.getBool(_T("AutoPortSelect"), false)) {
MsgBox(0, _T("The AutoPortSelect setting is not supported by this release.")
diff --git a/win/vncconfig/resource.h b/win/vncconfig/resource.h
index 16bbc15b..7350f5bb 100644
--- a/win/vncconfig/resource.h
+++ b/win/vncconfig/resource.h
@@ -52,8 +52,6 @@
#define IDC_BUILDTIME 1040
#define IDC_VERSION 1041
#define IDC_COPYRIGHT 1042
-#define IDC_HTTP_ENABLE 1043
-#define IDC_HTTP_PORT 1044
#define IDC_BL_THRESHOLD 1046
#define IDC_BL_TIMEOUT 1047
#define IDC_AFFECT_SCREENSAVER 1048
diff --git a/win/vncconfig/vncconfig.rc b/win/vncconfig/vncconfig.rc
index 27a8b5da..8d9a6c2b 100644
--- a/win/vncconfig/vncconfig.rc
+++ b/win/vncconfig/vncconfig.rc
@@ -110,9 +110,6 @@ BEGIN
LTEXT "Disconnect idle clients after (seconds):",IDC_STATIC,7,
25,138,15,SS_CENTERIMAGE
EDITTEXT IDC_IDLE_TIMEOUT,150,25,61,15,ES_AUTOHSCROLL | ES_NUMBER
- CONTROL "Serve Java viewer via HTTP on port:",IDC_HTTP_ENABLE,
- "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,40,138,15
- EDITTEXT IDC_HTTP_PORT,150,40,61,15,ES_AUTOHSCROLL | ES_NUMBER
GROUPBOX "Access Control",IDC_STATIC,7,55,204,135
CONTROL "Only accept connections from the local machine",
IDC_LOCALHOST,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,15,
diff --git a/win/winvnc/CMakeLists.txt b/win/winvnc/CMakeLists.txt
index ac9ae298..113796c8 100644
--- a/win/winvnc/CMakeLists.txt
+++ b/win/winvnc/CMakeLists.txt
@@ -1,29 +1,18 @@
include_directories(${CMAKE_BINARY_DIR}/win ${CMAKE_CURRENT_SOURCE_DIR})
-set(VNCVIEWER_JAR_PATH ${CMAKE_BINARY_DIR}/java/VncViewer.jar)
-set(INDEX_VNC_PATH ${CMAKE_CURRENT_SOURCE_DIR}/index.vnc)
-
-configure_file(winvnc.rc.in winvnc.rc)
-
add_executable(winvnc4 WIN32
buildTime.cxx
ControlPanel.cxx
- JavaViewer.cxx
ManagedListener.cxx
QueryConnectDialog.cxx
STrayIcon.cxx
VNCServerService.cxx
VNCServerWin32.cxx
winvnc.cxx
- ${CMAKE_CURRENT_BINARY_DIR}/winvnc.rc)
+ winvnc.rc)
target_link_libraries(winvnc4 rfb rfb_win32 network rdr ws2_32.lib)
-if(BUILD_JAVA)
- set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/winvnc.rc
- PROPERTIES OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/java/VncViewer.jar)
-endif()
-
install(TARGETS winvnc4
RUNTIME DESTINATION ${BIN_DIR}
)
diff --git a/win/winvnc/JavaViewer.cxx b/win/winvnc/JavaViewer.cxx
deleted file mode 100644
index e2e307e8..00000000
--- a/win/winvnc/JavaViewer.cxx
+++ /dev/null
@@ -1,107 +0,0 @@
-/* Copyright (C) 2002-2005 RealVNC Ltd. All Rights Reserved.
- *
- * This is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this software; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
- * USA.
- */
-
-#include <winvnc/JavaViewer.h>
-#include <winvnc/VNCServerWin32.h>
-#include <winvnc/resource.h>
-#include <rdr/MemInStream.h>
-#include <rfb/LogWriter.h>
-#include <rfb/VNCServerST.h>
-#include <rfb_win32/TCharArray.h>
-
-#include <windows.h>
-
-using namespace winvnc;
-using namespace rfb;
-
-
-static rfb::LogWriter vlog("JavaViewerServer");
-
-JavaViewerServer::JavaViewerServer(VNCServerWin32* svr) : server(svr) {
-}
-
-JavaViewerServer::~JavaViewerServer() {
-}
-
-rdr::InStream* JavaViewerServer::getFile(const char* name,
- const char** contentType,
- int* contentLength,
- time_t* lastModified)
-{
- if (strcmp(name, "/") == 0)
- name = "/index.vnc";
- if (strcmp(name, "/VncViewer.jar") == 0)
- name = "VncViewer.jar";
- if (strcmp(name, "/index.vnc") == 0)
- name = "index.vnc";
-
- HRSRC resource = FindResource(0, TStr(name), _T("HTTPFILE"));
- if (!resource) return 0;
- HGLOBAL handle = LoadResource(0, resource);
- if (!handle) return 0;
- void* buf = LockResource(handle);
- int len = SizeofResource(0, resource);
-
- rdr::InStream* is = new rdr::MemInStream(buf, len);
- if (strlen(name) > 4 && strcasecmp(&name[strlen(name)-4], ".vnc") == 0) {
- is = new rdr::SubstitutingInStream(is, this, 20);
- *contentType = "text/html";
- }
- return is;
-}
-
-char* JavaViewerServer::substitute(const char* varName)
-{
- if (strcmp(varName, "$$") == 0) {
- return rfb::strDup("$");
- }
- if (strcmp(varName, "$PORT") == 0) {
- char* str = new char[10];
- sprintf(str, "%d", rfbPort);
- return str;
- }
- if (strcmp(varName, "$WIDTH") == 0) {
- char* str = new char[10];
- sprintf(str, "%d", server->getDesktopSize().x);
- return str;
- }
- if (strcmp(varName, "$HEIGHT") == 0) {
- char* str = new char[10];
- sprintf(str, "%d", server->getDesktopSize().y);
- return str;
- }
- if (strcmp(varName, "$APPLETWIDTH") == 0) {
- char* str = new char[10];
- sprintf(str, "%d", server->getDesktopSize().x);
- return str;
- }
- if (strcmp(varName, "$APPLETHEIGHT") == 0) {
- char* str = new char[10];
- sprintf(str, "%d", server->getDesktopSize().y);
- return str;
- }
- if (strcmp(varName, "$DESKTOP") == 0) {
- return rfb::strDup(server->getName());
- }
- if (strcmp(varName, "$USER") == 0) {
- char tempStr[256]; DWORD tempStrLen = 256;
- GetUserName(tempStr, &tempStrLen);
- return rfb::strDup(tempStr);
- }
- return 0;
-}
diff --git a/win/winvnc/JavaViewer.h b/win/winvnc/JavaViewer.h
deleted file mode 100644
index 79a39696..00000000
--- a/win/winvnc/JavaViewer.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Copyright (C) 2002-2005 RealVNC Ltd. All Rights Reserved.
- *
- * This is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this software; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
- * USA.
- */
-
-// -=- JavaViewer.h
-
-// Custom HTTPServer-derived class which serves the Java VNC Viewer
-// to clients, using resource files compiled in to the WinVNC executable.
-
-#ifndef WINVNC_JAVA_VIEWER
-#define WINVNC_JAVA_VIEWER
-
-#include <rfb/HTTPServer.h>
-#include <rdr/SubstitutingInStream.h>
-
-namespace winvnc {
-
- class VNCServerWin32;
-
- class JavaViewerServer : public rfb::HTTPServer, public rdr::Substitutor {
- public:
- JavaViewerServer(VNCServerWin32* desktop);
- virtual ~JavaViewerServer();
-
- virtual rdr::InStream* getFile(const char* name, const char** contentType,
- int* contentLength, time_t* lastModified);
-
- // rdr::Substitutor callback
- virtual char* substitute(const char* varName);
-
- void setRFBport(int port) {
- rfbPort = port;
- }
- protected:
- int rfbPort;
- VNCServerWin32* server;
- };
-
-};
-
-#endif
-
diff --git a/win/winvnc/VNCServerWin32.cxx b/win/winvnc/VNCServerWin32.cxx
index b164c65f..9f6a954d 100644
--- a/win/winvnc/VNCServerWin32.cxx
+++ b/win/winvnc/VNCServerWin32.cxx
@@ -42,8 +42,6 @@ static LogWriter vlog("VNCServerWin32");
const TCHAR* winvnc::VNCServerWin32::RegConfigPath = _T("Software\\TigerVNC\\WinVNC4");
-static IntParameter http_port("HTTPPortNumber",
- "TCP/IP port on which the server will serve the Java applet VNC Viewer ", 5800);
static IntParameter port_number("PortNumber",
"TCP/IP port on which the server will accept connections", 5900);
static StringParameter hosts("Hosts",
@@ -63,8 +61,7 @@ VNCServerWin32::VNCServerWin32()
CreateEvent(0, FALSE, FALSE, "Global\\SessionEventTigerVNC") : 0),
vncServer(CStr(ComputerName().buf), &desktop),
thread_id(-1), runServer(false), isDesktopStarted(false),
- httpServer(this), config(&sockMgr),
- rfbSock(&sockMgr), httpSock(&sockMgr), trayIcon(0),
+ config(&sockMgr), rfbSock(&sockMgr), trayIcon(0),
queryConnectDialog(0)
{
commandLock = new os::Mutex;
@@ -148,16 +145,10 @@ void VNCServerWin32::regConfigChanged() {
// -=- Make sure we're listening on the right ports.
rfbSock.setServer(&vncServer);
rfbSock.setPort(port_number, localHost);
- httpSock.setServer(&httpServer);
- httpSock.setPort(http_port, localHost);
-
- // -=- Update the Java viewer's web page port number.
- httpServer.setRFBport(rfbSock.isListening() ? port_number : 0);
// -=- Update the TCP address filter for both ports, if open.
CharArray pattern(hosts.getData());
rfbSock.setFilter(pattern.buf);
- httpSock.setFilter(pattern.buf);
// -=- Update the tray icon tooltip text with IP addresses
processAddressChange();
diff --git a/win/winvnc/VNCServerWin32.h b/win/winvnc/VNCServerWin32.h
index ed051dcf..271cb76a 100644
--- a/win/winvnc/VNCServerWin32.h
+++ b/win/winvnc/VNCServerWin32.h
@@ -27,7 +27,6 @@
#include <rfb_win32/SocketManager.h>
#include <rfb_win32/TCharArray.h>
#include <winvnc/QueryConnectDialog.h>
-#include <winvnc/JavaViewer.h>
#include <winvnc/ManagedListener.h>
namespace os {
@@ -78,10 +77,6 @@ namespace winvnc {
bool setClientsStatus(rfb::ListConnInfo* LCInfo);
- // Used by JavaViewerServer
- const char* getName() {return vncServer.getName();}
- rfb::Point getDesktopSize() {return desktop.getFbSize();}
-
protected:
// VNCServerST::QueryConnectionHandler interface
// Callback used to prompt user to accept or reject a connection.
@@ -121,12 +116,10 @@ namespace winvnc {
DWORD thread_id;
bool runServer;
bool isDesktopStarted;
- JavaViewerServer httpServer;
rfb::win32::SocketManager sockMgr;
rfb::win32::RegConfig config;
ManagedListener rfbSock;
- ManagedListener httpSock;
STrayIconThread* trayIcon;
QueryConnectDialog* queryConnectDialog;
diff --git a/win/winvnc/index.vnc b/win/winvnc/index.vnc
deleted file mode 100644
index 560fa2e8..00000000
--- a/win/winvnc/index.vnc
+++ /dev/null
@@ -1,22 +0,0 @@
-<!--
- index.vnc - default HTML page for TigerVNC Java viewer applet, to be
- used with WinVNC. On any file ending in .vnc, the HTTP server embedded in
- WinVNC will substitute the following variables when preceded by a dollar:
- USER, DESKTOP, APPLETWIDTH, APPLETHEIGHT, WIDTH, HEIGHT, PORT,
- Use two dollar signs ($$) to get a dollar sign in the generated
- HTML page.
--->
-
-<HTML>
-<TITLE>
-$USER's $DESKTOP desktop
-</TITLE>
-<APPLET CODE=com.tigervnc.vncviewer.VncViewer ARCHIVE=VncViewer.jar
- WIDTH=$APPLETWIDTH HEIGHT=$APPLETHEIGHT>
-<param name=PORT value=$PORT>
-<param name="Embed" value="true">
-<param name="draggable" value="true">
-</APPLET>
-<BR>
-<A href="http://www.tigervnc.org/">TigerVNC site</A>
-</HTML>
diff --git a/win/winvnc/resource.h b/win/winvnc/resource.h
index 68316be9..0e52368c 100644
--- a/win/winvnc/resource.h
+++ b/win/winvnc/resource.h
@@ -8,7 +8,6 @@
#define IDD_DIALOG1 103
#define IDD_ABOUT 104
#define IDI_CONNECTED 105
-#define IDR_VNCVIEWER_JAR 106
#define IDD_QUERY_CONNECT 107
#define IDD_ADD_NEW_CLIENT 108
#define IDB_BITMAP 109
diff --git a/win/winvnc/winvnc.rc.in b/win/winvnc/winvnc.rc
index 2b50966e..44cb71ca 100644
--- a/win/winvnc/winvnc.rc.in
+++ b/win/winvnc/winvnc.rc
@@ -217,18 +217,6 @@ END
/////////////////////////////////////////////////////////////////////////////
//
-// HTTPFILE
-//
-
-#cmakedefine BUILD_JAVA
-
-#ifdef BUILD_JAVA
-VNCVIEWER.JAR HTTPFILE DISCARDABLE "@VNCVIEWER_JAR_PATH@"
-INDEX.VNC HTTPFILE DISCARDABLE "@INDEX_VNC_PATH@"
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-//
// 24
//