summaryrefslogtreecommitdiffstats
path: root/modules/retiolum/bin
diff options
context:
space:
mode:
Diffstat (limited to 'modules/retiolum/bin')
-rwxr-xr-xmodules/retiolum/bin/addipv619
-rwxr-xr-xmodules/retiolum/bin/fillxx6
2 files changed, 25 insertions, 0 deletions
diff --git a/modules/retiolum/bin/addipv6 b/modules/retiolum/bin/addipv6
new file mode 100755
index 00000000..da82e0d1
--- /dev/null
+++ b/modules/retiolum/bin/addipv6
@@ -0,0 +1,19 @@
+#! /bin/sh
+#
+# Add IPv6 to the retiolum interface.
+#
+# usage: addipv6
+#
+set -euf
+
+file=/etc/tinc/retiolum/hosts/`hostname`
+addr=`sed -rn 's|^Subnet *= *(42:[0-9A-Fa-f:]*/128)|\1|p' $file`
+
+if test `id -u` != 0; then
+ echo "we're going sudo..." >&2
+ exec sudo "$0" "$@"
+ exit 23 # go to hell
+fi
+
+ip -6 addr add $addr dev retiolum
+ip -6 route add 42::/16 dev retiolum
diff --git a/modules/retiolum/bin/fillxx b/modules/retiolum/bin/fillxx
new file mode 100755
index 00000000..5e558362
--- /dev/null
+++ b/modules/retiolum/bin/fillxx
@@ -0,0 +1,6 @@
+#! /bin/sh
+while echo $1 | grep -q xx; do
+ xx=`od -An -tx1 -N 1 /dev/urandom | tr -d \ `
+ set -- `echo $1 | sed s/xx/$xx/`
+done
+echo $1