diff -x '*.pyc' -x '*.swp' -x '*.egg-info' -x dropin.cache -urN twisted-90-release-tag.orig/twisted/conch/ssh/transport.py twisted-90-release-tag/twisted/conch/ssh/transport.py
--- twisted-90-release-tag.orig/twisted/conch/ssh/transport.py	2010-05-11 11:30:30.000000000 +0200
+++ twisted-90-release-tag/twisted/conch/ssh/transport.py	2010-05-11 11:40:29.000000000 +0200
@@ -67,6 +67,9 @@
     @ivar supportedLanguages: A list of strings representing languages
         supported, from most-preferred to least.
 
+    @ivar supportedVersions: A container of strings representing supported ssh
+        protcol version numbers.
+
     @ivar isClient: A boolean indicating whether this is a client or server.
 
     @ivar gotVersion: A boolean indicating whether we have receieved the
@@ -149,6 +152,7 @@
     supportedPublicKeys = ['ssh-rsa', 'ssh-dss']
     supportedCompressions = ['none', 'zlib']
     supportedLanguages = ()
+    supportedVersions = ('1.99', '2.0')
     isClient = False
     gotVersion = False
     buf = ''
@@ -300,7 +304,7 @@
                 if p.startswith('SSH-'):
                     self.gotVersion = True
                     self.otherVersionString = p.strip()
-                    if p.split('-')[1] not in ('1.99', '2.0'): # bad version
+                    if p.split('-')[1] not in self.supportedVersions:
                         self.sendDisconnect(
                             DISCONNECT_PROTOCOL_VERSION_NOT_SUPPORTED,
                             'bad version ' + p.split('-')[1])
diff -x '*.pyc' -x '*.swp' -x '*.egg-info' -x dropin.cache -urN twisted-90-release-tag.orig/twisted/conch/topfiles/4428.feature twisted-90-release-tag/twisted/conch/topfiles/4428.feature
--- twisted-90-release-tag.orig/twisted/conch/topfiles/4428.feature	1970-01-01 01:00:00.000000000 +0100
+++ twisted-90-release-tag/twisted/conch/topfiles/4428.feature	2010-05-11 12:07:35.000000000 +0200
@@ -0,0 +1 @@
+twisted.conch.ssh.transport.SSHTransportBase now allows supported ssh protocol versions to be overriden.
