self.ip = ip
self.netmask = netmask
self.broadcast = broadcast
- def update(self, netmask=None, broadcast=None):
- if netmask is not None: self.netmask = netmask
- if broadcast is not None: self.broadcast = broadcast
def as_tuple(self):
return (self.ip, self.netmask, self.broadcast)
), shell=True)
+ def handle_timer(self):
+ self.refresh_devices()
+
+
+ def refresh_devices(self):
+ devices = get_network_devices()
+ #add not registered devices
+ for k,v in devices.items():
+ if k not in self.devices:
+ self.devices[k] = Device(k,v)
+ #delete dead devices
+ for k in self.devices.keys():
+ if k not in devices:
+ del self.devices[k]
+
+
+
if __name__ == '__main__':
- ip = IpHandler()
+ ip = IpHanlder()
print '----------------------'
ip.hop.add('201.21.32.53','eth0')
ip.hop.add('205.65.65.25','eth1')
# vim: set encoding=utf-8 et sw=4 sts=4 :
import os
+import subprocess
from os import path
from signal import SIGTERM
else:
raise ConnectionNotFoundError(name)
+ def handle_timer(self):
+ for c in self.conns.values():
+ p = subprocess.Popen(('pgrep', '-f', 'pppd call ' + c.name),
+ stdout=subprocess.PIPE)
+ pid = p.communicate()[0]
+ if p.wait() == 0 and len(pid) > 0:
+ c._running = True
+ else:
+ c._running = False
+
def _write_config(self):
r"_write_config() -> None :: Generate all the configuration files."
#guardo los pass que van el pap-secrets
if __name__ == '__main__':
+
p = PppHandler()
p.conn.add('ppp_c','nico','nico',type='PPP',device='tty0')
p.conn.add('pppoe_c','fede','fede',type='OE',device='tty1')