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
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())
def __call__(self): auth = telnet.AuthenticatingTelnetProtocol return telnet.TelnetTransport(auth, self.portal)
def protocol(self): telnet_vars = self._get_telnet_vars() return telnet.TelnetTransport(telnet.TelnetBootstrapProtocol, insults.ServerProtocol, manhole.Manhole, telnet_vars)
def __call__(self): auth = telnet.AuthenticatingTelnetProtocol args = (self.portal, ) return telnet.TelnetTransport(auth, *args)
def setUp(self): self.p = telnet.TelnetTransport(TestProtocol) self.t = proto_helpers.StringTransport() self.p.makeConnection(self.t)
def MagicManholeFactory(namespace): f = protocol.ServerFactory() f.protocol = lambda: telnet.TelnetTransport(telnet.TelnetBootstrapProtocol, insults.insults.ServerProtocol, ReadlineyManhole, namespace) return f
def makeProtocol(): return telnet.TelnetTransport(telnet.TelnetBootstrapProtocol, insults.ServerProtocol, manhole.Manhole, namespace)