connect-vpn: Add OpenVPN support
authorDaniel Wagner <daniel.wagner@bmw-carit.de>
Wed, 3 Nov 2010 14:07:05 +0000 (15:07 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Wed, 3 Nov 2010 14:07:05 +0000 (15:07 +0100)
test/connect-vpn

index 22f1370..1575804 100755 (executable)
@@ -4,7 +4,11 @@ import sys
 import dbus
 
 if (len(sys.argv) < 4):
-       print "Usage: %s <name> <host> <cookie> [cafile]" % (sys.argv[0])
+       print "Usage: %s <type> ... " % (sys.argv[0])
+       print "  type: openconnect"
+       print "      <name> <host> <domain> <cookie> [cafile]"
+       print "  type: openvpn"
+       print "      <name> <host> <domain> <cafile> <certfile> <keyfile>"
        sys.exit(1)
 
 bus = dbus.SystemBus()
@@ -12,18 +16,32 @@ bus = dbus.SystemBus()
 manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
                                        "org.moblin.connman.Manager")
 
-print "Attempting to connect service %s" % (sys.argv[1])
+print "Attempting to connect service %s" % (sys.argv[3])
 
-if (len(sys.argv) > 4):
-       path = manager.ConnectProvider(({ "Type": "openconnect", "Name": sys.argv[1],
-                               "Host": sys.argv[2],
-                               "OpenConnect.Cookie": sys.argv[3],
-                               "OpenConnect.CACert": sys.argv[4],
-                               "VPN.Domain": "intel.com"}))
+if sys.argv[1] == "openconnect":
+       if (len(sys.argv) > 5):
+               path = manager.ConnectProvider(({ "Type": "openconnect",
+                                       "Name": sys.argv[2],
+                                       "Host": sys.argv[3],
+                                       "VPN.Domain": sys.argv[4],
+                                       "OpenConnect.Cookie": sys.argv[5],
+                                       "OpenConnect.CACert": sys.argv[6]}))
+       else:
+               path = manager.ConnectProvider(({ "Type": "openconnect",
+                                       "Name": sys.argv[2],
+                                       "Host": sys.argv[3],
+                                       "VPN.Domain": sys.argv[4],
+                                       "OpenConnect.Cookie": sys.argv[5]}))
+elif sys.argv[1] == "openvpn":
+       path = manager.ConnectProvider(({ "Type": "openvpn",
+                                       "Name": sys.argv[2],
+                                       "Host": sys.argv[3],
+                                       "VPN.Domain": sys.argv[4],
+                                       "OpenVPN.CACert": sys.argv[5],
+                                       "OpenVPN.Cert": sys.argv[6],
+                                       "OpenVPN.Key": sys.argv[7]}))
 else:
-       path = manager.ConnectProvider(({ "Type": "openconnect", "Name": sys.argv[1],
-                               "Host": sys.argv[2],
-                               "OpenConnect.Cookie": sys.argv[3],
-                               "VPN.Domain": "intel.com"}))
+       print "Unknown VPN type"
+       sys.exit(1)
 
 print "VPN service path is %s" %(path)