[Development] Pass Security instance to {C,S}SecurityVeNCrypt.

Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at>


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4101 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/common/rfb/CSecurityVeNCrypt.cxx b/common/rfb/CSecurityVeNCrypt.cxx
index 87b81b6..94af48d 100644
--- a/common/rfb/CSecurityVeNCrypt.cxx
+++ b/common/rfb/CSecurityVeNCrypt.cxx
@@ -39,7 +39,7 @@
 

 static LogWriter vlog("CVeNCrypt");

 

-CSecurityVeNCrypt::CSecurityVeNCrypt(void) : csecurity(NULL)

+CSecurityVeNCrypt::CSecurityVeNCrypt(Security* sec) : csecurity(NULL), security(sec)

 {

   haveRecvdMajorVersion = false;

   haveRecvdMinorVersion = false;

diff --git a/common/rfb/CSecurityVeNCrypt.h b/common/rfb/CSecurityVeNCrypt.h
index 7280546..3ad6eb2 100644
--- a/common/rfb/CSecurityVeNCrypt.h
+++ b/common/rfb/CSecurityVeNCrypt.h
@@ -35,7 +35,7 @@
   class CSecurityVeNCrypt : public CSecurity {

   public:

 

-    CSecurityVeNCrypt(void);

+    CSecurityVeNCrypt(Security* sec);

     ~CSecurityVeNCrypt();

     virtual bool processMsg(CConnection* cc);// { return true; }

     int getType() const {return chosenType;}

@@ -46,6 +46,7 @@
     static CSecurityStack* getCSecurityStack(int secType);

 

     CSecurity *csecurity;

+    Security *security;

     bool haveRecvdMajorVersion;

     bool haveRecvdMinorVersion;

     bool haveSentVersion;

diff --git a/common/rfb/SSecurityVeNCrypt.cxx b/common/rfb/SSecurityVeNCrypt.cxx
index b136599..894118d 100644
--- a/common/rfb/SSecurityVeNCrypt.cxx
+++ b/common/rfb/SSecurityVeNCrypt.cxx
@@ -60,7 +60,7 @@
  "TLSVnc, TLSPlain, X509None, X509Vnc, X509Plain)",

  "TLSVnc,TLSPlain,X509Vnc,X509Plain");

 

-SSecurityVeNCrypt::SSecurityVeNCrypt(void)

+SSecurityVeNCrypt::SSecurityVeNCrypt(Security *sec) : security(sec)

 {

   ssecurity = NULL;

   haveSentVersion = false;

diff --git a/common/rfb/SSecurityVeNCrypt.h b/common/rfb/SSecurityVeNCrypt.h
index cbbcb7f..1fd6b4a 100644
--- a/common/rfb/SSecurityVeNCrypt.h
+++ b/common/rfb/SSecurityVeNCrypt.h
@@ -40,7 +40,7 @@
 

   class SSecurityVeNCrypt : public SSecurity {

   public:

-    SSecurityVeNCrypt(void);

+    SSecurityVeNCrypt(Security *sec);

     ~SSecurityVeNCrypt();

     virtual bool processMsg(SConnection* sc);// { return true; }

     virtual int getType() const { return secTypeVeNCrypt; }

@@ -57,6 +57,7 @@
     static SSecurityStack* getSSecurityStack(int secType);

 

     SSecurity *ssecurity;

+    Security *security;

     bool haveSentVersion, haveRecvdMajorVersion, haveRecvdMinorVersion;

     bool haveSentTypes, haveChosenType;

     rdr::U8 majorVersion, minorVersion, numTypes;

diff --git a/common/rfb/Security.cxx b/common/rfb/Security.cxx
index cc4889a..4dea41e 100644
--- a/common/rfb/Security.cxx
+++ b/common/rfb/Security.cxx
@@ -117,7 +117,7 @@
   case secTypeNone: return new SSecurityNone();
   case secTypeVncAuth: return new SSecurityVncAuth();
 #ifdef HAVE_GNUTLS
-  case secTypeVeNCrypt: return new SSecurityVeNCrypt();
+  case secTypeVeNCrypt: return new SSecurityVeNCrypt(this);
 #endif
   }
 
@@ -136,7 +136,7 @@
   case secTypeNone: return new CSecurityNone();
   case secTypeVncAuth: return new CSecurityVncAuth();
 #ifdef HAVE_GNUTLS
-  case secTypeVeNCrypt: return new CSecurityVeNCrypt();
+  case secTypeVeNCrypt: return new CSecurityVeNCrypt(this);
 #endif
   }