You are not logged in.

#1 2016-01-07 15:50:43

FlorentM
Member
Registered: 2016-01-07
Posts: 2

Eduroam Configuration Assistant Tool

CAT EDUROAM provides a script to set-up the wireless configuration of Eduroam. For me it does not work out of the box. I did the following :
- manually suppress my previous eduroam configuration in network manager (not sure it's mandatory).
- install python-dbus :
- Slightly modify the script :

--- eduroam-linux-ECdL1.sh      2016-01-05 13:41:59.098624543 +0100
+++ eduroam-linux-ECdL2.sh      2016-01-05 12:10:53.243325155 +0100
@@ -264,7 +264,7 @@
 " > $HOME/.cat_installer/ca.pem
 function run_python_script {
 PASSWORD=$( echo "$PASSWORD" | sed "s/'/\\\'/g" )
-python << EOF > /dev/null 2>&1
+python << EOF 
 #-*- coding: utf-8 -*-
 import dbus
 import re
@@ -279,7 +279,7 @@
         try:
             self.bus = dbus.SystemBus()
         except dbus.exceptions.DBusException:
-            print "Can't connect to DBus"
+            print("Can't connect to DBus")
             sys.exit(2)
         #main service name
         self.system_service_name = "org.freedesktop.NetworkManager"
@@ -301,14 +301,14 @@
             #settings intrface
             self.settings = dbus.Interface(sysproxy, "org.freedesktop.NetworkManagerSettings")
         else:
-            print "This Network Manager version is not supported"
+            print("This Network Manager version is not supported")
             sys.exit(2)
 
     def check_opts(self):
         self.cacert_file = '${HOME}/.cat_installer/ca.pem'
         self.pfx_file = '${HOME}/.cat_installer/user.p12'
         if not os.path.isfile(self.cacert_file):
-            print "Certificate file not found, looks like a CAT error"
+            print ("Certificate file not found, looks like a CAT error")
             sys.exit(2)
 
     def check_nm_version(self):
@@ -336,7 +336,7 @@
         try:
             conns = self.settings.ListConnections()
         except dbus.exceptions.DBusException:
-            print "DBus connection problem, a sudo might help"
+            print("DBus connection problem, a sudo might help")
             exit(3)
         for each in conns:
             con_proxy = self.bus.get_object(self.system_service_name, each)
@@ -357,6 +357,7 @@
             'permissions': ['user:$USER'],
             'id': ssid 
         })
+        ssid=ssid.encode()
         s_wifi = dbus.Dictionary({
             'ssid': dbus.ByteArray(ssid),
             'security': '802-11-wireless-security'
@@ -367,10 +368,12 @@
             'pairwise': ['ccmp',],
             'group': ['ccmp', 'tkip']
         })
+        mystring="file://" + self.cacert_file + "\0"
+        mystring=mystring.encode()
         s_8021x = dbus.Dictionary({
             'eap': ['peap'],
             'identity': '$USER_NAME',
-            'ca-cert': dbus.ByteArray("file://" + self.cacert_file + "\0"),
+            'ca-cert': dbus.ByteArray(mystring),
             'subject-match': 'ec-lyon.fr',
             'password': '$PASSWORD',
             'phase2-auth': 'mschapv2',

Hoping this helps

Last edited by FlorentM (2016-01-07 15:53:24)

Offline

Board footer

Powered by FluxBB