#!/usr/bin/env python
# vim: set et sw=4 sts=4 :
-import sys
+import sys, os
def get_campos(line):
r = []
hosts = parse(sys.stdin)
for iface in hosts[host]['ifaces']:
if not iface['iface'].startswith('ppp'):
- print 'ifconfig %(iface)s %(ip)s broadcast %(broadcast)s netmask %(mascara)s' % iface
+ print 'UP: ifconfig %(iface)s %(ip)s broadcast %(broadcast)s netmask %(mascara)s' % iface
+ os.system('ifconfig %(iface)s %(ip)s broadcast %(broadcast)s netmask %(mascara)s' % iface)
for ruta in hosts[host]['rutas']:
if ruta['metrica'] <> "0":
- print 'route add -net %(ip)s gw %(gateway)s netmask %(mascara)s dev %(iface)s metric %(metrica)s' % ruta
+ print 'UP: route add -net %(ip)s gw %(gateway)s netmask %(mascara)s dev %(iface)s metric %(metrica)s' % ruta
+ os.system('route add -net %(ip)s gw %(gateway)s netmask %(mascara)s dev %(iface)s metric %(metrica)s' % ruta)
def down(host):
hosts = parse(sys.stdin)
for iface in hosts[host]['ifaces']:
if not iface['iface'].startswith('ppp'):
- print 'ifconfig %(iface)s down' % iface
+ print 'DOWN: ifconfig %(iface)s down' % iface
+ os.system('ifconfig %(iface)s down' % iface)
+
+def list():
+ hosts = parse(sys.stdin)
+ for host in hosts.keys():
+ print host
if __name__ == '__main__':
+ if len(sys.argv) < 2:
+ print >>sys.stderr, 'Uso: %s [up|down] host' % sys.argv[0]
+ sys.exit(1)
if sys.argv[1] == 'up':
up(sys.argv[2])
elif sys.argv[1] == 'down':
down(sys.argv[2])
+ elif sys.argv[1] == 'list':
+ list()