summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/zeroconf
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-connectivity/zeroconf')
-rw-r--r--meta/recipes-connectivity/zeroconf/zeroconf/compilefix.patch17
-rw-r--r--meta/recipes-connectivity/zeroconf/zeroconf/debian-zeroconf51
-rw-r--r--meta/recipes-connectivity/zeroconf/zeroconf/zeroconf-default17
-rw-r--r--meta/recipes-connectivity/zeroconf/zeroconf_0.9.bb22
4 files changed, 107 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/zeroconf/zeroconf/compilefix.patch b/meta/recipes-connectivity/zeroconf/zeroconf/compilefix.patch
new file mode 100644
index 0000000000..b7b917dc2b
--- /dev/null
+++ b/meta/recipes-connectivity/zeroconf/zeroconf/compilefix.patch
@@ -0,0 +1,17 @@
1| zeroconf.c: In function 'main':
2| zeroconf.c:145: error: 'PATH_MAX' undeclared (first use in this function)
3
4RP - 4/9/09
5
6Index: zeroconf-0.9/zeroconf.c
7===================================================================
8--- zeroconf-0.9.orig/zeroconf.c 2009-09-04 10:05:25.000000000 +0100
9+++ zeroconf-0.9/zeroconf.c 2009-09-04 10:05:42.000000000 +0100
10@@ -33,6 +33,7 @@
11 #include <net/if_arp.h>
12 #include <sys/time.h>
13 #include <signal.h>
14+#include <limits.h>
15
16 #include "delay.h"
17
diff --git a/meta/recipes-connectivity/zeroconf/zeroconf/debian-zeroconf b/meta/recipes-connectivity/zeroconf/zeroconf/debian-zeroconf
new file mode 100644
index 0000000000..c3705d2788
--- /dev/null
+++ b/meta/recipes-connectivity/zeroconf/zeroconf/debian-zeroconf
@@ -0,0 +1,51 @@
1#!/bin/sh
2
3if [ ! -x /usr/sbin/zeroconf ]; then
4 exit 0
5fi
6
7# IPv4 link-local addresses (zeroconf) are
8# only applicable on the 'inet' address family
9[ "X$ADDRFAM" != "Xinet" ] && exit 0
10
11# However there are some methods where it doesn't
12# make any sense to configure an IPv4LL address
13
14# not on loopback
15[ "X$METHOD" = "Xloopback" ] && exit 0
16
17# not on ppp or wvdial either
18[ "X$METHOD" = "Xppp" ] && exit 0
19[ "X$METHOD" = "Xwvdial" ] && exit 0
20
21# The administrator may have blacklisted interfaces
22# or only want zeroconf in a fallback situation
23[ -f /etc/default/zeroconf ] &&
24 . /etc/default/zeroconf
25
26[ -n "$DISABLE" ] && exit 0
27
28for BLACK in $IFBLACKLIST; do
29 case $IFACE in
30 $BLACK)
31 exit 0
32 ;;
33 esac
34done
35
36# should we only allocate an address if we do not already have one?
37if [ -n "$FALLBACK" ]; then
38 /bin/ip addr show $IFACE scope global | grep -q "inet"
39 IP=$?
40 if [ $IP -eq 0 ]; then
41 /bin/ip route add 169.254.0.0/16 dev $IFACE
42 exit 0
43 fi
44fi
45
46# otherwise, run if we aren't already going
47if [ ! -r /var/run/zeroconf.$IFACE.pid ]; then
48 /usr/sbin/zeroconf -i $IFACE
49fi
50
51exit 0
diff --git a/meta/recipes-connectivity/zeroconf/zeroconf/zeroconf-default b/meta/recipes-connectivity/zeroconf/zeroconf/zeroconf-default
new file mode 100644
index 0000000000..cc07b275f1
--- /dev/null
+++ b/meta/recipes-connectivity/zeroconf/zeroconf/zeroconf-default
@@ -0,0 +1,17 @@
1# Default for zeroconf
2
3# disable zeroconf
4# If you want to disable zeroconf completely, uncomment the following line
5# this may be useful if you are debugging zeroconf or starting it manually
6#DISABLE=yes
7
8# black-listed interfaces
9# Interfaces which you never wish to have zeroconf run on should
10# be listed here. e.g. "eth2 wlan1" in a space seperated string
11IFBLACKLIST=""
12
13# fallback only
14# If you would only like a link-local address if you were unable to
15# obtain an address via DHCP then uncomment the following line
16#FALLBACK=yes
17
diff --git a/meta/recipes-connectivity/zeroconf/zeroconf_0.9.bb b/meta/recipes-connectivity/zeroconf/zeroconf_0.9.bb
new file mode 100644
index 0000000000..f22466eea7
--- /dev/null
+++ b/meta/recipes-connectivity/zeroconf/zeroconf_0.9.bb
@@ -0,0 +1,22 @@
1DESCRIPTION = "IPv4 link-local address allocator"
2AUTHOR = "Anand Kumria <wildfire@progsoc.uts.edu.au>"
3HOMEPAGE = "http://www.progsoc.org/~wildfire/zeroconf/"
4LICENSE = "GPL"
5SECTION = "net"
6PRIORITY = "optional"
7
8PR = "r1"
9
10SRC_URI = "http://www.progsoc.org/~wildfire/zeroconf/download/${PN}-${PV}.tar.gz \
11 file://compilefix.patch;patch=1 \
12 file://zeroconf-default \
13 file://debian-zeroconf"
14
15do_install () {
16 install -d ${D}${sbindir}
17 install -d ${D}${sysconfdir}/network/if-up.d
18 install -d ${D}${sysconfdir}/default
19 install -c -m 755 ${S}/zeroconf ${D}${sbindir}/zeroconf
20 install -c -m 755 ${WORKDIR}/debian-zeroconf ${D}${sysconfdir}/network/if-up.d/zeroconf
21 install -c ${WORKDIR}/zeroconf-default ${D}${sysconfdir}/default/zeroconf
22}