OPtions - preserve peers

This commit is contained in:
Simon 2021-01-05 17:18:02 +00:00
parent 84bbc29650
commit d7e9ae9a4a
2 changed files with 10 additions and 6 deletions

View File

@ -624,13 +624,16 @@ def options_config():
tg = int(tg)
make_static_tg(tg,2,_tmout,_system)
systems[_system]._peer_sema.acquire(blocking=True)
_peerstmp = CONFIG['SYSTEMS'][_system]['PEERS']
CONFIG['SYSTEMS'][_system].update({
'TS1_STATIC' : _options['TS1_STATIC'],
'TS2_STATIC' : _options['TS2_STATIC'],
'DEFAULT_REFLECTOR' : int(_options['DEFAULT_REFLECTOR']),
'DEFAULT_UA_TIMER' : int(_options['DEFAULT_UA_TIMER'])
'DEFAULT_UA_TIMER' : int(_options['DEFAULT_UA_TIMER']),
'PEERS' : _peerstmp
})
systems[_system]._peer_sema.release()
def mysql_config_check():

View File

@ -19,10 +19,10 @@ class Proxy(DatagramProtocol):
self.numPorts = DestPortEnd - DestportStart
def reaper(self,_peer_id,transport):
def reaper(self,_peer_id):
if self.debug:
print("dead",_peer_id)
#transport.write(b'RPTCL'+_peer_id, ('127.0.0.1',self.peerTrack[_peer_id]['dport']))
self.transport.write(b'RPTCL'+_peer_id, ('127.0.0.1',self.peerTrack[_peer_id]['dport']))
self.connTrack[self.peerTrack[_peer_id]['dport']] = False
del self.peerTrack[_peer_id]
@ -81,10 +81,11 @@ class Proxy(DatagramProtocol):
# _peer_id = self.connTrack[port]
if self.debug:
print(data)
if _peer_id in self.peerTrack:
if _peer_id and _peer_id in self.peerTrack:
self.transport.write(data,(self.peerTrack[_peer_id]['shost'],self.peerTrack[_peer_id]['sport']))
#self.peerTrack[_peer_id]['timer'].reset()
return
else:
@ -132,7 +133,7 @@ class Proxy(DatagramProtocol):
self.peerTrack[_peer_id]['dport'] = _dport
self.peerTrack[_peer_id]['sport'] = port
self.peerTrack[_peer_id]['shost'] = host
self.peerTrack[_peer_id]['timer'] = ResettableTimer(self.timeout,self.reaper,[_peer_id,self.transport])
self.peerTrack[_peer_id]['timer'] = ResettableTimer(self.timeout,self.reaper,[_peer_id])
self.peerTrack[_peer_id]['timer'].start()
self.transport.write(data, (self.master,_dport))
if self.debug: