Signed-off-by: Martin Koegler <mkoeg...@auto.tuwien.ac.at>
---
 common/rfb/ConnParams.cxx  |    2 +-
 common/rfb/ConnParams.h    |    1 -
 common/rfb/SConnection.cxx |  170 --------------------------------------------
 common/rfb/SConnection.h   |    9 ---
 4 files changed, 1 insertions(+), 181 deletions(-)

diff --git a/common/rfb/ConnParams.cxx b/common/rfb/ConnParams.cxx
index 3ee3708..a636885 100644
--- a/common/rfb/ConnParams.cxx
+++ b/common/rfb/ConnParams.cxx
@@ -27,7 +27,7 @@
 using namespace rfb;
 
 ConnParams::ConnParams()
-  : majorVersion(0), minorVersion(0), tightExtensionsEnabled(false),
+  : majorVersion(0), minorVersion(0),
     width(0), height(0), useCopyRect(false),
     supportsLocalCursor(false), supportsLocalXCursor(false),
     supportsDesktopResize(false), supportsExtendedDesktopSize(false),
diff --git a/common/rfb/ConnParams.h b/common/rfb/ConnParams.h
index 54b5ada..c25e563 100644
--- a/common/rfb/ConnParams.h
+++ b/common/rfb/ConnParams.h
@@ -40,7 +40,6 @@ namespace rfb {
 
     int majorVersion;
     int minorVersion;
-    bool tightExtensionsEnabled;
 
     void setVersion(int major, int minor) {
       majorVersion = major; minorVersion = minor;
diff --git a/common/rfb/SConnection.cxx b/common/rfb/SConnection.cxx
index fdd8da9..9d4d6ba 100644
--- a/common/rfb/SConnection.cxx
+++ b/common/rfb/SConnection.cxx
@@ -89,8 +89,6 @@ void SConnection::processMsg()
   switch (state_) {
   case RFBSTATE_PROTOCOL_VERSION: processVersionMsg();      break;
   case RFBSTATE_SECURITY_TYPE:    processSecurityTypeMsg(); break;
-  case RFBSTATE_TIGHT_TUNN_TYPE:  processTunnelTypeMsg();   break;
-  case RFBSTATE_TIGHT_AUTH_TYPE:  processAuthTypeMsg();     break;
   case RFBSTATE_SECURITY:         processSecurityMsg();     break;
   case RFBSTATE_INITIALISATION:   processInitMsg();         break;
   case RFBSTATE_NORMAL:           reader_->readMsg();       break;
@@ -167,9 +165,6 @@ void SConnection::processVersionMsg()
     return;
   }
 
-  // Add a special security type to advertise TightVNC protocol extensions.
-  // secTypes.push_back(secTypeTight);
-
   // list supported security types for >=3.7 clients
 
   if (secTypes.empty())
@@ -188,107 +183,9 @@ void SConnection::processSecurityTypeMsg()
   vlog.debug("processing security type message");
   int secType = is->readU8();
 
-  if (secType == secTypeTight) {
-    vlog.info("Enabling TightVNC protocol extensions");
-    cp.tightExtensionsEnabled = true;
-    offerTunneling();
-  } else {
-    processSecurityType(secType);
-  }
-}
-
-//
-// TightVNC-specific protocol initialization (tunneling, authentication)
-//
-
-void SConnection::offerTunneling()
-{
-  vlog.debug("offering list of tunneling methods");
-  int nTypes = 0;
-
-  // Advertise our tunneling capabilities (currently, nothing to advertise).
-  os->writeU32(nTypes);
-  os->flush();
-
-  if (nTypes) {
-    // NOTE: Never executed in current version.
-    state_ = RFBSTATE_TIGHT_TUNN_TYPE;
-  } else {
-    offerAuthentication();
-  }
-}
-
-// NOTE: This function is never called in current version.
-void SConnection::processTunnelTypeMsg()
-{
-  vlog.debug("processing tunneling type message (TightVNC extension)");
-  int tunnelType = is->readU32();
-  vlog.error("unsupported tunneling type %d requested, ignoring", tunnelType);
-  offerAuthentication();
-}
-
-void SConnection::offerAuthentication()
-{
-  vlog.debug("offering list of authentication methods");
-
-  // See processVersionMsg(), the code below is similar.
-
-  std::list<rdr::U8> secTypes;
-  std::list<rdr::U8>::iterator i;
-
-  // NOTE: In addition to standard security types, we might want to offer
-  //       TightVNC-specific authentication types. But currently we support
-  //       only the standard security types: secTypeNone and secTypeVncAuth.
-  secTypes = security->GetEnabledSecTypes();
-
-  CapsList caps;
-  for (i = secTypes.begin(); i != secTypes.end(); i++) {
-    // FIXME: Capability info should be provided by SSecurity objects.
-    switch (*i) {
-    case secTypeNone:     caps.addStandard(*i, "NOAUTH__"); break;
-    case secTypeVncAuth:  caps.addStandard(*i, "VNCAUTH_"); break;
-    default:
-      // This should not ever happen.
-      vlog.error("not offering unknown security type %d", (int)*i);
-    }
-  }
-
-  if (caps.getSize() < 1)
-    throwConnFailedException("No supported security types");
-
-  if (caps.includesOnly(secTypeNone)) {
-    // Special case - if caps includes nothing else than secTypeNone, we send
-    // an empty capability list and do not expect security type selection from
-    // the client. Then, continue the protocol like if the client has selected
-    // secTypeNone (starting at base protocol version 3.8, "security result"
-    // will follow).
-    os->writeU32(0);
-    os->flush();
-    processSecurityType(secTypeNone);
-  } else {
-    // Normal case - sending the list of authentication capabilities.
-    os->writeU32(caps.getSize());
-    caps.write(os);
-    os->flush();
-    state_ = RFBSTATE_TIGHT_AUTH_TYPE;
-  }
-}
-
-void SConnection::processAuthTypeMsg()
-{
-  vlog.debug("processing authentication type message (TightVNC extension)");
-
-  // NOTE: Currently, we support only the standard security types, so we
-  //       just pass TightVNC authentication type for standard processing,
-  //       just as it was usual RFB security type.
-  int secType = is->readU32();
   processSecurityType(secType);
 }
 
-//
-// End of TightVNC-specific code
-//
-
 void SConnection::processSecurityType(int secType)
 {
   // Verify that the requested security type should be offered
@@ -416,76 +313,9 @@ void SConnection::clientInit(bool shared)
 {
   writer_->writeServerInit();
 
-  // FIXME: Send interaction capabilities via writer_?
-  if (cp.tightExtensionsEnabled)
-    sendInteractionCaps();
-
   state_ = RFBSTATE_NORMAL;
 }
 
-// FIXME: Move sendInteractionCaps() to a class derived from SMsgWriterV3?
-void SConnection::sendInteractionCaps()
-{
-  //
-  // Advertise support for non-standard server-to-client messages
-  //
-
-  CapsList scaps;
-
-  //
-  // Advertise support for non-standard client-to-server messages
-  //
-
-  CapsList ccaps;
-
-  //
-  // Advertise all supported encoding types (except raw encoding).
-  //
-
-  CapsList ecaps;
-
-  // First, add true encodings.
-  for (int i = 1; i <= encodingMax; i++) {
-    if (Encoder::supported(i)) {
-      // FIXME: Capability info should be provided by Encoder objects.
-      switch (i) {
-      case encodingRRE:      ecaps.addStandard(i, "RRE_____"); break;
-      case encodingCoRRE:    ecaps.addStandard(i, "CORRE___"); break;
-      case encodingHextile:  ecaps.addStandard(i, "HEXTILE_"); break;
-      case encodingZRLE:     ecaps.addStandard(i, "ZRLE____"); break;
-      case encodingTight:    ecaps.addTightExt(i, "TIGHT___"); break;
-      default:
-        // This should not ever happen.
-        vlog.error("not advertising unknown encoding type %d", (int)i);
-      }
-    }
-  }
-
-  // CopyRect is special - Encoder::supported() returns 0 for it,
-  // that's why we add it here explicitly.
-  ecaps.addStandard(encodingCopyRect,             "COPYRECT");
-
-  // Add supported pseudo encodings as well.
-  ecaps.addTightExt(pseudoEncodingCompressLevel0, "COMPRLVL");
-  ecaps.addTightExt(pseudoEncodingQualityLevel0,  "JPEGQLVL");
-  ecaps.addTightExt(pseudoEncodingXCursor,        "X11CURSR");
-  ecaps.addTightExt(pseudoEncodingCursor,         "RCHCURSR");
-  ecaps.addTightExt(pseudoEncodingLastRect,       "LASTRECT");
-  ecaps.addStandard(pseudoEncodingDesktopSize,    "NEWFBSIZ");
-
-  os->writeU16(scaps.getSize());
-  os->writeU16(ccaps.getSize());
-  os->writeU16(ecaps.getSize());
-  os->writeU16(0);
-  if (scaps.getSize())
-    scaps.write(os);
-  if (ccaps.getSize())
-    ccaps.write(os);
-  if (ecaps.getSize())
-    ecaps.write(os);
-  os->flush();
-}
-
 void SConnection::setPixelFormat(const PixelFormat& pf)
 {
   SMsgHandler::setPixelFormat(pf);
diff --git a/common/rfb/SConnection.h b/common/rfb/SConnection.h
index d0bd499..cdfde43 100644
--- a/common/rfb/SConnection.h
+++ b/common/rfb/SConnection.h
@@ -156,8 +156,6 @@ namespace rfb {
       RFBSTATE_UNINITIALISED,
       RFBSTATE_PROTOCOL_VERSION,
       RFBSTATE_SECURITY_TYPE,
-      RFBSTATE_TIGHT_TUNN_TYPE,
-      RFBSTATE_TIGHT_AUTH_TYPE,
       RFBSTATE_SECURITY,
       RFBSTATE_QUERYING,
       RFBSTATE_INITIALISATION,
@@ -179,13 +177,6 @@ namespace rfb {
     void processSecurityMsg();
     void processInitMsg();
 
-    // These functions add support for TightVNC protocol extensions.
-    void offerTunneling();
-    void processTunnelTypeMsg();
-    void offerAuthentication();
-    void processAuthTypeMsg();
-    void sendInteractionCaps();
-
     int defaultMajorVersion, defaultMinorVersion;
     rdr::InStream* is;
     rdr::OutStream* os;
-- 
1.5.6.5


------------------------------------------------------------------------------
The Next 800 Companies to Lead America's Growth: New Video Whitepaper
David G. Thomson, author of the best-selling book "Blueprint to a 
Billion" shares his insights and actions to help propel your 
business during the next growth cycle. Listen Now!
http://p.sf.net/sfu/SAP-dev2dev
_______________________________________________
Tigervnc-devel mailing list
Tigervnc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-devel

Reply via email to