summaryrefslogtreecommitdiffstats
path: root/src/os-plugins/plugins/eduroam/XX_eduroam.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/os-plugins/plugins/eduroam/XX_eduroam.sh')
-rw-r--r--src/os-plugins/plugins/eduroam/XX_eduroam.sh47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/os-plugins/plugins/eduroam/XX_eduroam.sh b/src/os-plugins/plugins/eduroam/XX_eduroam.sh
new file mode 100644
index 00000000..d977a791
--- /dev/null
+++ b/src/os-plugins/plugins/eduroam/XX_eduroam.sh
@@ -0,0 +1,47 @@
+# Copyright (c) 2007..2008 - RZ Uni Freiburg
+# Copyright (c) 2008 - 2009 OpenSLX GmbH
+#
+# This program/file is free software distributed under the GPL version 2.
+# See http://openslx.org/COPYING
+#
+# If you have any feedback please consult http://openslx.org/feedback and
+# send your feedback to feedback@openslx.org
+#
+# General information about OpenSLX can be found at http://openslx.org
+#
+# stage3 part of 'eduroam' plugin
+#
+# script is included from init via the "." load function - thus it has all
+# variables and functions available
+
+if [ -e /initramfs/plugin-conf/eduroam.conf ]; then
+ . /initramfs/plugin-conf/eduroam.conf
+ if [ $eduroam_active -ne 0 ]; then
+ [ $DEBUGLEVEL -gt 0 ] && echo "executing the 'eduroam' plugin...";
+
+ # copy files
+ cd /mnt/opt/openslx/plugin-repo/eduroam/files
+ # better with tar, doesn't work however...
+ #tar c * | tar x -C /mnt
+ for f in $(find . -type f); do cp $f /mnt/$f; done
+
+ # delete old config, just to make sure there are no conflicts
+ pam_radius_conf=/mnt/etc/pam_radius_auth.conf
+ [ -f $pam_radius_conf ] && rm $pam_radius_conf
+
+ # hack to get the actual literal string from the config file...
+ secret=$(cat /initramfs/plugin-conf/eduroam.conf | grep secret | \
+ sed 's/eduroam_server_secret="//g' | sed 's/\(.*\)./\1/')
+
+ # write eduroam server config
+ echo -n "$eduroam_server_ip $secret 3" > $pam_radius_conf
+
+ # activate eduroam in kdm
+ # TODO: for other desktop managers
+ pam_kdm=/mnt/etc/pam.d/kdm
+ [ -f $pam_kdm ] && sed 's/@include common-auth/@include radius-auth/g' -i $pam_kdm
+
+ [ $DEBUGLEVEL -gt 0 ] && echo "done with the 'eduroam' plugin...";
+ fi
+fi
+