コード例 #1
0
ファイル: posixbase.py プロジェクト: bopopescu/cc-2
 def listenSSL(self, port, factory, contextFactory, backlog=50, interface=''):
     """@see: twisted.internet.interfaces.IReactorSSL.listenSSL
     """
     assert sslEnabled, "SSL support is not present"
     p = ssl.Port(port, factory, contextFactory, backlog, interface, self)
     p.startListening()
     return p
コード例 #2
0
 def listenSSL(self, port, factory, ctxFactory, backlog=5):
     """
     Connects a given protocol factory to the given numeric TCP/IP port.
     The connection is a SSL one, using contexts created by the context
     factory.
     """
     from twisted.internet import ssl
     self.addPort(ssl.Port(port, factory, ctxFactory, backlog))
コード例 #3
0
 def listenSSL(self, port, factory, contextFactory, backlog=50, interface=''):
     if tls is not None:
         tlsFactory = tls.TLSMemoryBIOFactory(contextFactory, False, factory)
         port = self.listenTCP(port, tlsFactory, backlog, interface)
         port._type = 'TLS'
         return port
     elif ssl is not None:
         p = ssl.Port(
             port, factory, contextFactory, backlog, interface, self)
         p.startListening()
         return p
     else:
         assert False, "SSL support is not present"
コード例 #4
0
ファイル: JAP.py プロジェクト: web883/jap
    def action_JAP_REMOTE_WS_START(self, request):
        port = self.port_JAP_REMOTE_WS

        if port == None:
            configuration = JAP_LOCAL.getConfiguration(
                "./JAP_REMOTE_WS.json", JAP_REMOTE_WS.getDefaultConfiguration)

            if configuration["REMOTE_PROXY_SERVER"]["TYPE"] == "HTTPS":
                factory = JAP_REMOTE_WS.WSInputProtocolFactory(
                    configuration,
                    "wss://" +
                    str(configuration["REMOTE_PROXY_SERVER"]["ADDRESS"]) +
                    ":" + str(configuration["REMOTE_PROXY_SERVER"]["PORT"]),
                    debug=False)
                factory.protocol = JAP_REMOTE_WS.WSInputProtocol

                contextFactory = ssl.DefaultOpenSSLContextFactory(
                    configuration["REMOTE_PROXY_SERVER"]["CERTIFICATE"]["KEY"]
                    ["FILE"], configuration["REMOTE_PROXY_SERVER"]
                    ["CERTIFICATE"]["FILE"])

                port = ssl.Port(
                    configuration["REMOTE_PROXY_SERVER"]["PORT"], factory,
                    contextFactory, 50,
                    configuration["REMOTE_PROXY_SERVER"]["ADDRESS"], reactor)
                port.startListening()

                self.port_JAP_REMOTE_WS = port
            else:
                factory = JAP_REMOTE_WS.WSInputProtocolFactory(
                    configuration,
                    "ws://" +
                    str(configuration["REMOTE_PROXY_SERVER"]["ADDRESS"]) +
                    ":" + str(configuration["REMOTE_PROXY_SERVER"]["PORT"]),
                    debug=False)
                factory.protocol = JAP_REMOTE_WS.WSInputProtocol

                port = tcp.Port(
                    configuration["REMOTE_PROXY_SERVER"]["PORT"], factory, 50,
                    configuration["REMOTE_PROXY_SERVER"]["ADDRESS"], reactor)
                port.startListening()

                self.port_JAP_REMOTE_WS = port

            return ""
コード例 #5
0
def createWSPort(configuration):
    if configuration["REMOTE_PROXY_SERVER"]["TYPE"] == "WS":
        factory = WSInputProtocolFactory(
            configuration,
            "ws://" + str(configuration["REMOTE_PROXY_SERVER"]["ADDRESS"]) +
            ":" + str(configuration["REMOTE_PROXY_SERVER"]["PORT"]))

        return tcp.Port(configuration["REMOTE_PROXY_SERVER"]["PORT"], factory,
                        50, configuration["REMOTE_PROXY_SERVER"]["ADDRESS"],
                        reactor)
    else:
        factory = WSInputProtocolFactory(
            configuration,
            "wss://" + str(configuration["REMOTE_PROXY_SERVER"]["ADDRESS"]) +
            ":" + str(configuration["REMOTE_PROXY_SERVER"]["PORT"]))

        contextFactory = twunnel.remote_proxy_server__ssl.SSLServerContextFactory(
            configuration["REMOTE_PROXY_SERVER"]["CERTIFICATE"]["FILE"],
            configuration["REMOTE_PROXY_SERVER"]["CERTIFICATE"]["KEY"]["FILE"])

        return ssl.Port(configuration["REMOTE_PROXY_SERVER"]["PORT"], factory,
                        contextFactory, 50,
                        configuration["REMOTE_PROXY_SERVER"]["ADDRESS"],
                        reactor)
コード例 #6
0
def createSSLPort(configuration):
    factory = SSLInputProtocolFactory(configuration)
    
    contextFactory = SSLServerContextFactory(configuration["REMOTE_PROXY_SERVER"]["CERTIFICATE"]["FILE"], configuration["REMOTE_PROXY_SERVER"]["CERTIFICATE"]["KEY"]["FILE"])
    
    return ssl.Port(configuration["REMOTE_PROXY_SERVER"]["PORT"], factory, contextFactory, 50, configuration["REMOTE_PROXY_SERVER"]["ADDRESS"], reactor)