示例#1
0
 def connected(protocol):
     if not ITLSTransport.providedBy(protocol.transport):
         results.append("skip")
     else:
         results.append(self.assertRaises(ValueError,
                                          protocol.transport.startTLS,
                                          brokenFactory))
 def connected(protocol):
     if not ITLSTransport.providedBy(protocol.transport):
         results.append("skip")
     else:
         results.append(self.assertRaises(ValueError,
                                          protocol.transport.startTLS,
                                          brokenFactory))
示例#3
0
	def execute(self, user, data):
		if user.secureConnection:
			user.sendMessage(irc.ERR_STARTTLS, "The connection is already secure")
			return True
		try:
			secureTransport = ITLSTransport(user.transport)
		except TypeError:
			user.sendMessage(irc.ERR_STARTTLS, "Failed to initialize transport for STARTTLS")
			return True
		if secureTransport is None:
			user.sendMessage(irc.ERR_STARTTLS, "Failed to initialize transport for STARTTLS")
			return True
		user.transport = secureTransport
		user.sendMessage(irc.RPL_STARTTLS, "STARTTLS successful; proceed with TLS handshake")
		secureTransport.startTLS(self.certContext)
		user.secureConnection = ISSLTransport(secureTransport, None) is not None
		return True
示例#4
0
 def onUse(self, user, data):
     try:
         user.socket.transport = ITLSTransport(user.socket.transport)
     except:
         user.sendMessage(irc.ERR_STARTTLS, ":STARTTLS failed")
     else:
         user.sendMessage(
             irc.RPL_STARTTLS,
             ":STARTTLS successful, proceed with TLS handshake")
         user.socket.transport.startTLS(self.ircd.ssl_cert)
         user.socket.secure = ISSLTransport(user.socket.transport,
                                            None) is not None
示例#5
0
            def connectionMade(self):
                if not ITLSTransport.providedBy(self.transport):
                    # Functionality isn't available to be tested.
                    finished = self.factory.finished
                    self.factory.finished = None
                    finished.errback(SkipTest("No ITLSTransport support"))
                    return

                # Switch the transport to TLS.
                self.transport.startTLS(self.factory.context)
                # Force TLS to really get negotiated.  If nobody talks, nothing
                # will happen.
                self.transport.write("x")
示例#6
0
文件: test_tls.py 项目: Almad/twisted
            def connectionMade(self):
                if not ITLSTransport.providedBy(self.transport):
                    # Functionality isn't available to be tested.
                    finished = self.factory.finished
                    self.factory.finished = None
                    finished.errback(SkipTest("No ITLSTransport support"))
                    return

                # Switch the transport to TLS.
                self.transport.startTLS(self.factory.context)
                # Force TLS to really get negotiated.  If nobody talks, nothing
                # will happen.
                self.transport.write("x")
示例#7
0
文件: tls.py 项目: luxaritas/txircd
 def execute(self, user, data):
     if user.secureConnection:
         user.sendMessage(irc.ERR_STARTTLS,
                          "The connection is already secure")
         return True
     try:
         secureTransport = ITLSTransport(user.transport)
     except TypeError:
         user.sendMessage(irc.ERR_STARTTLS,
                          "Failed to initialize transport for STARTTLS")
         return True
     if secureTransport is None:
         user.sendMessage(irc.ERR_STARTTLS,
                          "Failed to initialize transport for STARTTLS")
         return True
     user.transport = secureTransport
     user.sendMessage(irc.RPL_STARTTLS,
                      "STARTTLS successful; proceed with TLS handshake")
     secureTransport.startTLS(self.certContext)
     user.secureConnection = ISSLTransport(secureTransport,
                                           None) is not None
     return True
示例#8
0
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.

"""
Tests for L{twisted.conch.ssh.agent}.
"""

import struct

from twisted.internet import reactor
from twisted.internet.interfaces import ITLSTransport
from twisted.trial import unittest

if not ITLSTransport.providedBy(reactor):
    iosim = None
else:
    from twisted.test import iosim

try:
    import Crypto.Cipher.DES3
except ImportError:
    Crypto = None

try:
    import pyasn1
except ImportError:
    pyasn1 = None

if Crypto and pyasn1:
    from twisted.conch.ssh import keys, agent
else:
示例#9
0
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Tests for L{twisted.conch.ssh.agent}.
"""

import struct

from twisted.internet import reactor
from twisted.internet.interfaces import ITLSTransport
from twisted.trial import unittest

if not ITLSTransport.providedBy(reactor):
    iosim = None
else:
    from twisted.test import iosim

try:
    import Crypto.Cipher.DES3
except ImportError:
    Crypto = None

try:
    import pyasn1
except ImportError:
    pyasn1 = None

if Crypto and pyasn1:
    from twisted.conch.ssh import keys, agent
else:
    keys = agent = None