Exemple #1
0
    def setUp(self):
        recvlineServer = self.serverProtocol()
        insultsServer = TestInsultsServerProtocol(lambda: recvlineServer)
        telnetServer = telnet.TelnetTransport(lambda: insultsServer)
        clientTransport = LoopbackRelay(telnetServer)

        recvlineClient = NotifyingExpectableBuffer()
        insultsClient = TestInsultsClientProtocol(lambda: recvlineClient)
        telnetClient = telnet.TelnetTransport(lambda: insultsClient)
        serverTransport = LoopbackRelay(telnetClient)

        telnetClient.makeConnection(clientTransport)
        telnetServer.makeConnection(serverTransport)

        serverTransport.clearBuffer()
        clientTransport.clearBuffer()

        self.recvlineClient = recvlineClient
        self.telnetClient = telnetClient
        self.clientTransport = clientTransport
        self.serverTransport = serverTransport

        return recvlineClient.onConnection
Exemple #2
0
    def protocol(self):
        class Portal:
            """An implementation of IPortal"""
            @defers
            def login(self_, credentials, mind, *interfaces):
                if not (credentials.username == self.username.encode('utf8')
                        and credentials.checkPassword(
                            self.password.encode('utf8'))):
                    raise ValueError("Invalid credentials")

                protocol = telnet.TelnetBootstrapProtocol(
                    insults.ServerProtocol, manhole.Manhole,
                    self._get_telnet_vars())
                return (interfaces[0], protocol, lambda: None)

        return telnet.TelnetTransport(telnet.AuthenticatingTelnetProtocol,
                                      Portal())
Exemple #3
0
 def __call__(self):
     auth = telnet.AuthenticatingTelnetProtocol
     return telnet.TelnetTransport(auth, self.portal)
Exemple #4
0
 def protocol(self):
     telnet_vars = self._get_telnet_vars()
     return telnet.TelnetTransport(telnet.TelnetBootstrapProtocol,
                                   insults.ServerProtocol, manhole.Manhole,
                                   telnet_vars)
Exemple #5
0
 def __call__(self):
     auth = telnet.AuthenticatingTelnetProtocol
     args = (self.portal, )
     return telnet.TelnetTransport(auth, *args)
Exemple #6
0
 def setUp(self):
     self.p = telnet.TelnetTransport(TestProtocol)
     self.t = proto_helpers.StringTransport()
     self.p.makeConnection(self.t)
Exemple #7
0
def MagicManholeFactory(namespace):
    f = protocol.ServerFactory()
    f.protocol = lambda: telnet.TelnetTransport(telnet.TelnetBootstrapProtocol,
                                                insults.insults.ServerProtocol,
                                                ReadlineyManhole, namespace)
    return f
Exemple #8
0
 def makeProtocol():
     return telnet.TelnetTransport(telnet.TelnetBootstrapProtocol,
                                   insults.ServerProtocol, manhole.Manhole,
                                   namespace)