Vici python handling
Version vom 18. Dezember 2017, 17:25 Uhr von Thomas (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „<pre> #!/usr/bin/python import vici import socket import collections import sys import getopt s = socket.socket(socket.AF_UNIX) s.connect("/var/run/charon.vic…“)
#!/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()