manager: Addedd timeout to server protocol

This commit is contained in:
Maurizio Porrato 2011-04-09 18:16:37 +02:00
parent 345a13edc2
commit 0f2881fbab
1 changed files with 4 additions and 1 deletions

View File

@ -6,6 +6,7 @@
from twisted.internet.defer import Deferred, succeed from twisted.internet.defer import Deferred, succeed
from twisted.internet.protocol import ReconnectingClientFactory, ServerFactory from twisted.internet.protocol import ReconnectingClientFactory, ServerFactory
from twisted.protocols.basic import LineOnlyReceiver from twisted.protocols.basic import LineOnlyReceiver
from twisted.protocols.policies import TimeoutMixin
from twisted.internet.task import LoopingCall from twisted.internet.task import LoopingCall
from twisted.python import log from twisted.python import log
from frn.user import FRNUser from frn.user import FRNUser
@ -107,13 +108,14 @@ class FRNManagerClientFactory(ReconnectingClientFactory):
pass pass
class FRNManagerServer(LineOnlyReceiver): class FRNManagerServer(LineOnlyReceiver, TimeoutMixin):
def connectionMade(self): def connectionMade(self):
log.msg("Manager client connected from %s" % self.transport.getPeer().host) log.msg("Manager client connected from %s" % self.transport.getPeer().host)
self._phase = "CONNECTED" self._phase = "CONNECTED"
self.serverInfo = None self.serverInfo = None
self.kp = makeRandomChallange() self.kp = makeRandomChallange()
self.setTimeout(30.0)
def connectionLost(self, reason): def connectionLost(self, reason):
log.msg("Manager client disconnected from %s: %s" % log.msg("Manager client disconnected from %s: %s" %
@ -129,6 +131,7 @@ class FRNManagerServer(LineOnlyReceiver):
self.transport.loseConnection() self.transport.loseConnection()
def lineReceived(self, line): def lineReceived(self, line):
self.resetTimeout()
sline = line.strip() sline = line.strip()
if self._phase == "CHALLANGE": if self._phase == "CHALLANGE":
if sline == responseToChallange(self.kp): if sline == responseToChallange(self.kp):