Revision: 4156
http://tigervnc.svn.sourceforge.net/tigervnc/?rev=4156&view=rev
Author: atkac
Date: 2010-10-01 08:33:29 +0000 (Fri, 01 Oct 2010)
Log Message:
-----------
[Development] Move Get{C,S}Security from Security class to separate classes.
Modified Paths:
--------------
trunk/common/rfb/CConnection.cxx
trunk/common/rfb/CConnection.h
trunk/common/rfb/CSecurityVeNCrypt.cxx
trunk/common/rfb/CSecurityVeNCrypt.h
trunk/common/rfb/Makefile.am
trunk/common/rfb/SConnection.cxx
trunk/common/rfb/SConnection.h
trunk/common/rfb/SSecurityVeNCrypt.cxx
trunk/common/rfb/SSecurityVeNCrypt.h
trunk/common/rfb/Security.cxx
trunk/common/rfb/Security.h
trunk/win/vncconfig/Authentication.h
Added Paths:
-----------
trunk/common/rfb/SecurityClient.cxx
trunk/common/rfb/SecurityClient.h
trunk/common/rfb/SecurityServer.cxx
trunk/common/rfb/SecurityServer.h
Modified: trunk/common/rfb/CConnection.cxx
===================================================================
--- trunk/common/rfb/CConnection.cxx 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/CConnection.cxx 2010-10-01 08:33:29 UTC (rev 4156)
@@ -36,7 +36,7 @@
shared(false),
state_(RFBSTATE_UNINITIALISED), useProtocol3_3(false)
{
- security = new Security(SecurityViewer);
+ security = new SecurityClient();
}
CConnection::~CConnection()
Modified: trunk/common/rfb/CConnection.h
===================================================================
--- trunk/common/rfb/CConnection.h 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/CConnection.h 2010-10-01 08:33:29 UTC (rev 4156)
@@ -28,7 +28,7 @@
#include <rfb/CMsgHandler.h>
#include <rfb/CSecurity.h>
#include <rfb/util.h>
-#include <rfb/Security.h>
+#include <rfb/SecurityClient.h>
namespace rfb {
@@ -134,7 +134,7 @@
CSecurity *csecurity; /* Windows viewer needs it exported. */
protected:
void setState(stateEnum s) { state_ = s; }
- Security *security;
+ SecurityClient *security;
private:
void processVersionMsg();
Modified: trunk/common/rfb/CSecurityVeNCrypt.cxx
===================================================================
--- trunk/common/rfb/CSecurityVeNCrypt.cxx 2010-09-30 18:53:42 UTC (rev
4155)
+++ trunk/common/rfb/CSecurityVeNCrypt.cxx 2010-10-01 08:33:29 UTC (rev
4156)
@@ -36,7 +36,7 @@
static LogWriter vlog("CVeNCrypt");
-CSecurityVeNCrypt::CSecurityVeNCrypt(Security* sec) : csecurity(NULL),
security(sec)
+CSecurityVeNCrypt::CSecurityVeNCrypt(SecurityClient* sec) : csecurity(NULL),
security(sec)
{
haveRecvdMajorVersion = false;
haveRecvdMinorVersion = false;
Modified: trunk/common/rfb/CSecurityVeNCrypt.h
===================================================================
--- trunk/common/rfb/CSecurityVeNCrypt.h 2010-09-30 18:53:42 UTC (rev
4155)
+++ trunk/common/rfb/CSecurityVeNCrypt.h 2010-10-01 08:33:29 UTC (rev
4156)
@@ -26,7 +26,7 @@
#define __CSECURITYVENCRYPT_H__
#include <rfb/CSecurity.h>
-#include <rfb/Security.h>
+#include <rfb/SecurityClient.h>
#include <rdr/types.h>
namespace rfb {
@@ -34,7 +34,7 @@
class CSecurityVeNCrypt : public CSecurity {
public:
- CSecurityVeNCrypt(Security* sec);
+ CSecurityVeNCrypt(SecurityClient* sec);
~CSecurityVeNCrypt();
virtual bool processMsg(CConnection* cc);// { return true; }
int getType() const {return chosenType;}
@@ -43,7 +43,7 @@
static StringParameter secTypesStr;
protected:
CSecurity *csecurity;
- Security *security;
+ SecurityClient *security;
bool haveRecvdMajorVersion;
bool haveRecvdMinorVersion;
bool haveSentVersion;
Modified: trunk/common/rfb/Makefile.am
===================================================================
--- trunk/common/rfb/Makefile.am 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/Makefile.am 2010-10-01 08:33:29 UTC (rev 4156)
@@ -18,7 +18,8 @@
PixelFormat.h PixelFormat.inl Pixel.h RawDecoder.h RawEncoder.h \
Rect.h Region.h rreDecode.h RREDecoder.h rreEncode.h RREEncoder.h \
ScaledPixelBuffer.h ScaleFilters.h SConnection.h ScreenSet.h \
- screenTypes.h SDesktop.h Security.h ServerCore.h SMsgHandler.h \
+ screenTypes.h SDesktop.h Security.h SecurityServer.h SecurityClient.h \
+ ServerCore.h SMsgHandler.h \
SMsgReader.h SMsgReaderV3.h SMsgWriter.h SMsgWriterV3.h SSecurity.h \
SSecurityNone.h SSecurityPlain.h SSecurityStack.h SSecurityVeNCrypt.h \
SSecurityVncAuth.h Threading.h tightDecode.h \
@@ -40,7 +41,8 @@
RREEncoder.cxx RREDecoder.cxx RawDecoder.cxx RawEncoder.cxx \
Region.cxx SConnection.cxx SMsgHandler.cxx \
SMsgReader.cxx SMsgReaderV3.cxx SMsgWriter.cxx SMsgWriterV3.cxx \
- ServerCore.cxx Security.cxx SSecurityPlain.cxx SSecurityStack.cxx \
+ ServerCore.cxx Security.cxx SecurityServer.cxx SecurityClient.cxx \
+ SSecurityPlain.cxx SSecurityStack.cxx \
SSecurityVncAuth.cxx SSecurityVeNCrypt.cxx \
ScaledPixelBuffer.cxx ScaleFilters.cxx Timer.cxx TightDecoder.cxx \
TightEncoder.cxx TightPalette.cxx TransImageGetter.cxx \
Modified: trunk/common/rfb/SConnection.cxx
===================================================================
--- trunk/common/rfb/SConnection.cxx 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/SConnection.cxx 2010-10-01 08:33:29 UTC (rev 4156)
@@ -55,7 +55,7 @@
cp.setVersion(defaultMajorVersion, defaultMinorVersion);
- security = new Security(SecurityServer);
+ security = new SecurityServer();
}
SConnection::~SConnection()
Modified: trunk/common/rfb/SConnection.h
===================================================================
--- trunk/common/rfb/SConnection.h 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/SConnection.h 2010-10-01 08:33:29 UTC (rev 4156)
@@ -26,7 +26,7 @@
#include <rdr/InStream.h>
#include <rdr/OutStream.h>
#include <rfb/SMsgHandler.h>
-#include <rfb/Security.h>
+#include <rfb/SecurityServer.h>
#include <rfb/SSecurity.h>
namespace rfb {
@@ -191,7 +191,7 @@
rdr::OutStream* os;
SMsgReader* reader_;
SMsgWriter* writer_;
- Security *security;
+ SecurityServer *security;
SSecurity* ssecurity;
stateEnum state_;
bool reverseConnection;
Modified: trunk/common/rfb/SSecurityVeNCrypt.cxx
===================================================================
--- trunk/common/rfb/SSecurityVeNCrypt.cxx 2010-09-30 18:53:42 UTC (rev
4155)
+++ trunk/common/rfb/SSecurityVeNCrypt.cxx 2010-10-01 08:33:29 UTC (rev
4156)
@@ -38,7 +38,7 @@
static LogWriter vlog("SVeNCrypt");
-SSecurityVeNCrypt::SSecurityVeNCrypt(Security *sec) : security(sec)
+SSecurityVeNCrypt::SSecurityVeNCrypt(SecurityServer *sec) : security(sec)
{
ssecurity = NULL;
haveSentVersion = false;
Modified: trunk/common/rfb/SSecurityVeNCrypt.h
===================================================================
--- trunk/common/rfb/SSecurityVeNCrypt.h 2010-09-30 18:53:42 UTC (rev
4155)
+++ trunk/common/rfb/SSecurityVeNCrypt.h 2010-10-01 08:33:29 UTC (rev
4156)
@@ -36,7 +36,7 @@
class SSecurityVeNCrypt : public SSecurity {
public:
- SSecurityVeNCrypt(Security *sec);
+ SSecurityVeNCrypt(SecurityServer *sec);
~SSecurityVeNCrypt();
virtual bool processMsg(SConnection* sc);// { return true; }
virtual int getType() const { return secTypeVeNCrypt; }
@@ -44,7 +44,7 @@
protected:
SSecurity *ssecurity;
- Security *security;
+ SecurityServer *security;
bool haveSentVersion, haveRecvdMajorVersion, haveRecvdMinorVersion;
bool haveSentTypes, haveChosenType;
rdr::U8 majorVersion, minorVersion, numTypes;
Modified: trunk/common/rfb/Security.cxx
===================================================================
--- trunk/common/rfb/Security.cxx 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/Security.cxx 2010-10-01 08:33:29 UTC (rev 4156)
@@ -52,41 +52,11 @@
static LogWriter vlog("Security");
-UserPasswdGetter *CSecurity::upg = NULL;
-
-StringParameter Security::secTypesViewer
-("SecurityTypes",
- "Specify which security scheme to use (None, VncAuth)",
-#ifdef HAVE_GNUTLS
- "VeNCrypt,X509Plain,TLSPlain,X509Vnc,TLSVnc,X509None,TLSNone,VncAuth,None",
-#else
- "VncAuth,None",
-#endif
-ConfViewer);
-
-StringParameter Security::secTypesServer
-("SecurityTypes",
- "Specify which security scheme to use (None, VncAuth)",
-#ifdef HAVE_GNUTLS
- "VeNCrypt,TLSVnc,VncAuth",
-#else
- "VncAuth",
-#endif
-ConfServer);
-
-Security::Security(SecurityClassType secClassType)
+Security::Security(StringParameter &secTypes)
{
char *secTypesStr;
- switch (secClassType) {
- case SecurityViewer:
- secTypesStr = secTypesViewer.getData();
- break;
- case SecurityServer:
- secTypesStr = secTypesServer.getData();
- break;
- };
-
+ secTypesStr = secTypes.getData();
enabledSecTypes = parseSecTypes(secTypesStr);
delete secTypesStr;
@@ -138,74 +108,6 @@
return false;
}
-SSecurity* Security::GetSSecurity(U32 secType)
-{
- if (!IsSupported(secType))
- goto bail;
-
- switch (secType) {
- case secTypeNone: return new SSecurityNone();
- case secTypeVncAuth: return new SSecurityVncAuth();
- case secTypeVeNCrypt: return new SSecurityVeNCrypt(this);
- case secTypePlain: return new SSecurityPlain();
-#ifdef HAVE_GNUTLS
- case secTypeTLSNone:
- return new SSecurityStack(secTypeTLSNone, new SSecurityTLS(true));
- case secTypeTLSVnc:
- return new SSecurityStack(secTypeTLSVnc, new SSecurityTLS(true), new
SSecurityVncAuth());
- case secTypeTLSPlain:
- return new SSecurityStack(secTypeTLSPlain, new SSecurityTLS(true), new
SSecurityPlain());
- case secTypeX509None:
- return new SSecurityStack(secTypeX509None, new SSecurityTLS(false));
- case secTypeX509Vnc:
- return new SSecurityStack(secTypeX509None, new SSecurityTLS(false), new
SSecurityVncAuth());
- case secTypeX509Plain:
- return new SSecurityStack(secTypeX509Plain, new SSecurityTLS(false), new
SSecurityPlain());
-#endif
- }
-
-bail:
- throw Exception("Security type not supported");
-}
-
-CSecurity* Security::GetCSecurity(U32 secType)
-{
- assert (CSecurity::upg != NULL); /* (upg == NULL) means bug in the viewer */
-
- if (!IsSupported(secType))
- goto bail;
-
- switch (secType) {
- case secTypeNone: return new CSecurityNone();
- case secTypeVncAuth: return new CSecurityVncAuth();
- case secTypeVeNCrypt: return new CSecurityVeNCrypt(this);
- case secTypePlain: return new CSecurityPlain();
-#ifdef HAVE_GNUTLS
- case secTypeTLSNone:
- return new CSecurityStack(secTypeTLSNone, "TLS with no password",
- new CSecurityTLS(true));
- case secTypeTLSVnc:
- return new CSecurityStack(secTypeTLSVnc, "TLS with VNCAuth",
- new CSecurityTLS(true), new CSecurityVncAuth());
- case secTypeTLSPlain:
- return new CSecurityStack(secTypeTLSPlain, "TLS with Username/Password",
- new CSecurityTLS(true), new CSecurityPlain());
- case secTypeX509None:
- return new CSecurityStack(secTypeX509None, "X509 with no password",
- new CSecurityTLS(false));
- case secTypeX509Vnc:
- return new CSecurityStack(secTypeX509None, "X509 with VNCAuth",
- new CSecurityTLS(false), new CSecurityVncAuth());
- case secTypeX509Plain:
- return new CSecurityStack(secTypeX509Plain, "X509 with Username/Password",
- new CSecurityTLS(false), new CSecurityPlain());
-#endif
- }
-
-bail:
- throw Exception("Security type not supported");
-}
-
rdr::U32 rfb::secTypeNum(const char* name)
{
if (strcasecmp(name, "None") == 0) return secTypeNone;
Modified: trunk/common/rfb/Security.h
===================================================================
--- trunk/common/rfb/Security.h 2010-09-30 18:53:42 UTC (rev 4155)
+++ trunk/common/rfb/Security.h 2010-10-01 08:33:29 UTC (rev 4156)
@@ -60,14 +60,12 @@
const rdr::U32 secResultFailed = 1;
const rdr::U32 secResultTooMany = 2; // deprecated
- enum SecurityClassType { SecurityViewer, SecurityServer };
-
class Security {
public:
/*
* Create Security instance.
*/
- Security(SecurityClassType secClassType);
+ Security(StringParameter &secTypes);
/*
* Note about security types.
@@ -90,15 +88,6 @@
/* Get list of enabled VeNCrypt subtypes */
const std::list<rdr::U32> GetEnabledExtSecTypes(void);
- /* Create server side SSecurity class instance */
- SSecurity* GetSSecurity(rdr::U32 secType);
-
- /* Create client side CSecurity class instance */
- CSecurity* GetCSecurity(rdr::U32 secType);
-
- static StringParameter secTypesViewer;
- static StringParameter secTypesServer;
-
private:
std::list<rdr::U32> enabledSecTypes;
};
Added: trunk/common/rfb/SecurityClient.cxx
===================================================================
--- trunk/common/rfb/SecurityClient.cxx (rev 0)
+++ trunk/common/rfb/SecurityClient.cxx 2010-10-01 08:33:29 UTC (rev 4156)
@@ -0,0 +1,88 @@
+/* Copyright (C) 2002-2005 RealVNC Ltd. All Rights Reserved.
+ * Copyright (C) 2010 TigerVNC Team
+ *
+ * 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <assert.h>
+#include <rfb/CSecurityNone.h>
+#include <rfb/CSecurityStack.h>
+#include <rfb/CSecurityVeNCrypt.h>
+#include <rfb/CSecurityVncAuth.h>
+#include <rfb/CSecurityPlain.h>
+#include <rdr/Exception.h>
+#include <rfb/Security.h>
+#ifdef HAVE_GNUTLS
+#include <rfb/CSecurityTLS.h>
+#endif
+
+using namespace rdr;
+using namespace rfb;
+
+UserPasswdGetter *CSecurity::upg = NULL;
+
+StringParameter SecurityClient::secTypes
+("SecurityTypes",
+ "Specify which security scheme to use (None, VncAuth)",
+#ifdef HAVE_GNUTLS
+ "VeNCrypt,X509Plain,TLSPlain,X509Vnc,TLSVnc,X509None,TLSNone,VncAuth,None",
+#else
+ "VncAuth,None",
+#endif
+ConfViewer);
+
+CSecurity* SecurityClient::GetCSecurity(U32 secType)
+{
+ assert (CSecurity::upg != NULL); /* (upg == NULL) means bug in the viewer */
+
+ if (!IsSupported(secType))
+ goto bail;
+
+ switch (secType) {
+ case secTypeNone: return new CSecurityNone();
+ case secTypeVncAuth: return new CSecurityVncAuth();
+ case secTypeVeNCrypt: return new CSecurityVeNCrypt(this);
+ case secTypePlain: return new CSecurityPlain();
+#ifdef HAVE_GNUTLS
+ case secTypeTLSNone:
+ return new CSecurityStack(secTypeTLSNone, "TLS with no password",
+ new CSecurityTLS(true));
+ case secTypeTLSVnc:
+ return new CSecurityStack(secTypeTLSVnc, "TLS with VNCAuth",
+ new CSecurityTLS(true), new CSecurityVncAuth());
+ case secTypeTLSPlain:
+ return new CSecurityStack(secTypeTLSPlain, "TLS with Username/Password",
+ new CSecurityTLS(true), new CSecurityPlain());
+ case secTypeX509None:
+ return new CSecurityStack(secTypeX509None, "X509 with no password",
+ new CSecurityTLS(false));
+ case secTypeX509Vnc:
+ return new CSecurityStack(secTypeX509None, "X509 with VNCAuth",
+ new CSecurityTLS(false), new CSecurityVncAuth());
+ case secTypeX509Plain:
+ return new CSecurityStack(secTypeX509Plain, "X509 with Username/Password",
+ new CSecurityTLS(false), new CSecurityPlain());
+#endif
+ }
+
+bail:
+ throw Exception("Security type not supported");
+}
+
Added: trunk/common/rfb/SecurityClient.h
===================================================================
--- trunk/common/rfb/SecurityClient.h (rev 0)
+++ trunk/common/rfb/SecurityClient.h 2010-10-01 08:33:29 UTC (rev 4156)
@@ -0,0 +1,43 @@
+/* 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.
+ */
+//
+// secTypes.h - constants for the various security types.
+//
+
+#ifndef __RFB_SECURITYCLIENT_H__
+#define __RFB_SECURITYCLIENT_H__
+
+#include <rfb/Configuration.h>
+#include <rfb/Security.h>
+#include <rfb/CSecurity.h>
+
+namespace rfb {
+
+ class SecurityClient : public Security {
+ public:
+ SecurityClient(void) : Security(secTypes) {}
+
+ /* Create client side CSecurity class instance */
+ CSecurity* GetCSecurity(rdr::U32 secType);
+
+ static StringParameter secTypes;
+ };
+
+}
+
+#endif
Added: trunk/common/rfb/SecurityServer.cxx
===================================================================
--- trunk/common/rfb/SecurityServer.cxx (rev 0)
+++ trunk/common/rfb/SecurityServer.cxx 2010-10-01 08:33:29 UTC (rev 4156)
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2010 TigerVNC Team
+ *
+ * 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.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <rdr/Exception.h>
+#include <rfb/Security.h>
+#include <rfb/SSecurityNone.h>
+#include <rfb/SSecurityStack.h>
+#include <rfb/SSecurityPlain.h>
+#include <rfb/SSecurityVncAuth.h>
+#include <rfb/SSecurityVeNCrypt.h>
+#ifdef HAVE_GNUTLS
+#include <rfb/SSecurityTLS.h>
+#endif
+
+using namespace rdr;
+using namespace rfb;
+
+StringParameter SecurityServer::secTypes
+("SecurityTypes",
+ "Specify which security scheme to use (None, VncAuth)",
+#ifdef HAVE_GNUTLS
+ "VeNCrypt,TLSVnc,VncAuth",
+#else
+ "VncAuth",
+#endif
+ConfServer);
+
+SSecurity* SecurityServer::GetSSecurity(U32 secType)
+{
+ if (!IsSupported(secType))
+ goto bail;
+
+ switch (secType) {
+ case secTypeNone: return new SSecurityNone();
+ case secTypeVncAuth: return new SSecurityVncAuth();
+ case secTypeVeNCrypt: return new SSecurityVeNCrypt(this);
+ case secTypePlain: return new SSecurityPlain();
+#ifdef HAVE_GNUTLS
+ case secTypeTLSNone:
+ return new SSecurityStack(secTypeTLSNone, new SSecurityTLS(true));
+ case secTypeTLSVnc:
+ return new SSecurityStack(secTypeTLSVnc, new SSecurityTLS(true), new
SSecurityVncAuth());
+ case secTypeTLSPlain:
+ return new SSecurityStack(secTypeTLSPlain, new SSecurityTLS(true), new
SSecurityPlain());
+ case secTypeX509None:
+ return new SSecurityStack(secTypeX509None, new SSecurityTLS(false));
+ case secTypeX509Vnc:
+ return new SSecurityStack(secTypeX509None, new SSecurityTLS(false), new
SSecurityVncAuth());
+ case secTypeX509Plain:
+ return new SSecurityStack(secTypeX509Plain, new SSecurityTLS(false), new
SSecurityPlain());
+#endif
+ }
+
+bail:
+ throw Exception("Security type not supported");
+}
+
Added: trunk/common/rfb/SecurityServer.h
===================================================================
--- trunk/common/rfb/SecurityServer.h (rev 0)
+++ trunk/common/rfb/SecurityServer.h 2010-10-01 08:33:29 UTC (rev 4156)
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2010 TigerVNC Team
+ *
+ * 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.
+ */
+
+#ifndef __RFB_SECURITYSERVER_H__
+#define __RFB_SECURITYSERVER_H__
+
+#include <rfb/Configuration.h>
+#include <rfb/Security.h>
+#include <rfb/SSecurity.h>
+
+namespace rfb {
+
+ class SecurityServer : public Security {
+ public:
+ SecurityServer(void) : Security(secTypes) {}
+
+ /* Create server side SSecurity class instance */
+ SSecurity* GetSSecurity(rdr::U32 secType);
+
+ static StringParameter secTypes;
+ };
+
+}
+
+#endif
Modified: trunk/win/vncconfig/Authentication.h
===================================================================
--- trunk/win/vncconfig/Authentication.h 2010-09-30 18:53:42 UTC (rev
4155)
+++ trunk/win/vncconfig/Authentication.h 2010-10-01 08:33:29 UTC (rev
4156)
@@ -40,7 +40,7 @@
AuthenticationPage(const RegKey& rk)
: PropSheetPage(GetModuleHandle(0),
MAKEINTRESOURCE(IDD_AUTHENTICATION)), regKey(rk) {}
void initDialog() {
- CharArray sec_types_str(Security::secTypesServer.getData());
+ CharArray sec_types_str(SecurityServer::secTypes.getData());
std::list<rdr::U32> sec_types = parseSecTypes(sec_types_str.buf);
useNone = useVNC = false;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Tigervnc-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tigervnc-commits