1 # Read username, output from non-empty factory, drop connections
3 from twisted.internet import protocol, reactor
4 from twisted.protocols import basic
6 class FingerProtocol(basic.LineReceiver):
7 def lineReceived(self, user):
8 self.transport.write(self.factory.getUser(user)+"\r\n")
9 self.transport.loseConnection()
11 class FingerFactory(protocol.ServerFactory):
12 protocol = FingerProtocol
14 def __init__(self, **kwargs):
17 def getUser(self, user):
18 return self.users.get(user, "No such user")
20 reactor.listenTCP(1079, FingerFactory(moshez='Happy and well'))