summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormh <mh@immerda.ch>2013-08-10 20:53:48 +0200
committermh <mh@immerda.ch>2013-08-10 20:53:48 +0200
commit8016f252e14c9af93fd17753eeb20d035ccfcb7e (patch)
tree89387619ec9aef7e0b3697071f584fb607735ca1
parent0c7c91c6e3ae96c768f343ff1e5436eb0181989b (diff)
add info script
-rw-r--r--manifests/base.pp4
-rw-r--r--templates/scripts/info.sh.erb8
2 files changed, 12 insertions, 0 deletions
diff --git a/manifests/base.pp b/manifests/base.pp
index e4fd1e5..e6595a0 100644
--- a/manifests/base.pp
+++ b/manifests/base.pp
@@ -40,6 +40,10 @@ class strongswan::base {
content => "#!/bin/bash\n${strongswan::binary} status | grep INSTALLED | awk -F\\{ '{ print \$1 }'\n",
notify => undef,
mode => '0500';
+ "/usr/local/sbin/${binary_name}_info":
+ content => template('strongswan/scripts/info.sh.erb'),
+ notify => undef,
+ mode => '0500';
"/usr/local/sbin/${binary_name}_start_unconnected":
content => template('strongswan/scripts/start_unconnected.sh.erb'),
notify => undef,
diff --git a/templates/scripts/info.sh.erb b/templates/scripts/info.sh.erb
new file mode 100644
index 0000000..d48a97e
--- /dev/null
+++ b/templates/scripts/info.sh.erb
@@ -0,0 +1,8 @@
+#!/bin/bash
+connected=`<%= scope.lookupvar('strongswan::base::binary_name') %>_connected_hosts`
+grep -El '^conn' /etc/ipsec.d/hosts/* | while read line; do
+ host=`basename $line '.conf'`
+ echo $connected | grep -q $host
+ ([ $? -eq 0 ] && echo "+ ${host}") || echo " ${host}"
+done
+