38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
# Copyright (c) 2009 Twisted Matrix Laboratories.
|
|
# See LICENSE for details.
|
|
|
|
from twisted.conch.telnet import TelnetTransport, TelnetProtocol
|
|
from twisted.internet.protocol import ServerFactory
|
|
from twisted.application.internet import TCPServer
|
|
from twisted.application.service import Application
|
|
|
|
class TelnetEcho(TelnetProtocol):
|
|
def enableRemote(self, option):
|
|
self.transport.write("You tried to enable %r (I rejected it)\r\n" % (option,))
|
|
return False
|
|
|
|
|
|
def disableRemote(self, option):
|
|
self.transport.write("You disabled %r\r\n" % (option,))
|
|
|
|
|
|
def enableLocal(self, option):
|
|
self.transport.write("You tried to make me enable %r (I rejected it)\r\n" % (option,))
|
|
return False
|
|
|
|
|
|
def disableLocal(self, option):
|
|
self.transport.write("You asked me to disable %r\r\n" % (option,))
|
|
|
|
|
|
def dataReceived(self, data):
|
|
self.transport.write("I received %r from you\r\n" % (data,))
|
|
|
|
|
|
factory = ServerFactory()
|
|
factory.protocol = lambda: TelnetTransport(TelnetEcho)
|
|
service = TCPServer(8023, factory)
|
|
|
|
application = Application("Telnet Echo Server")
|
|
service.setServiceParent(application)
|