summaryrefslogtreecommitdiffstats
path: root/dvswitch-avahi/dvsink-files-avahi
diff options
context:
space:
mode:
Diffstat (limited to 'dvswitch-avahi/dvsink-files-avahi')
-rwxr-xr-xdvswitch-avahi/dvsink-files-avahi17
1 files changed, 17 insertions, 0 deletions
diff --git a/dvswitch-avahi/dvsink-files-avahi b/dvswitch-avahi/dvsink-files-avahi
new file mode 100755
index 0000000..dd8ec54
--- /dev/null
+++ b/dvswitch-avahi/dvsink-files-avahi
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+cmd=$(basename $0)
+cmd=${cmd%-avahi}
+
+if [ -z "$cmd" ] ; then
+ echo error: Unable to determine command name
+ exit 1
+fi
+
+# Dropping lines with : to avoid IPv6 addresses. dvswitch do not
+# handle link local IPv6 addresses passed on from avahi.
+args=$(avahi-browse -tr -v _dvswitch._tcp 2>&1 | grep -v : | \
+ awk '/address = /{host = $3} /port = /{port = $3} END { if (host) { print "-h", host, "-p", port } }' | \
+ tr -d '[]')
+
+$cmd $args $@