Vici python handling
Zur Navigation springen
Zur Suche springen
#!/usr/bin/python import vici import socket import collections import sys import getopt s = socket.socket(socket.AF_UNIX) s.connect("/var/run/charon.vici") v = vici.Session(s) options, argument = getopt.getopt(sys.argv[1:], 't:i:' ) if len(argument) == 0 and len(options) == 0: for vpn_conn in v.list_sas(): for key in vpn_conn: try: print 'conn:', key except: pass else: for opt, arg in options: if opt in ('-t'): conn = arg sa = collections.OrderedDict() sa['ike'] = conn rep = v.terminate(sa) rep.next() rep.close() elif opt in ('-i'): conn = arg sa = collections.OrderedDict() sa['child'] = conn rep = v.initiate(sa) rep.next() rep.close()
#!/usr/bin/python import vici import socket import collections v = vici.Session() ver = v.version() stats = v.stats() lists = v.list_conns() def check_dict(**kwargs): if kwargs is not None: for key, value in kwargs.iteritems(): if isinstance(value, dict): print "=== " + key + " ===" check_dict(**value) print else: print "%s == %s" %(key,value) for conn in v.list_conns(): for key in conn: check_dict(**conn[key])