diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2009-09-04 10:07:29 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2009-09-04 10:07:29 +0100 |
commit | 0e842cf1b5356090005ddb301e86bee7b1a180fb (patch) | |
tree | 0024ab53d324a17a6fdd224e551d09aeccb3f876 /meta/packages/zeroconf/zeroconf/debian-zeroconf | |
parent | a340d3cda7c5716376ae3b6a1e3d96139704cbfd (diff) | |
download | openembedded-core-contrib-0e842cf1b5356090005ddb301e86bee7b1a180fb.tar.gz |
zeroconf: Fix compile issue
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/packages/zeroconf/zeroconf/debian-zeroconf')
-rw-r--r-- | meta/packages/zeroconf/zeroconf/debian-zeroconf | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/meta/packages/zeroconf/zeroconf/debian-zeroconf b/meta/packages/zeroconf/zeroconf/debian-zeroconf new file mode 100644 index 0000000000..c3705d2788 --- /dev/null +++ b/meta/packages/zeroconf/zeroconf/debian-zeroconf @@ -0,0 +1,51 @@ +#!/bin/sh + +if [ ! -x /usr/sbin/zeroconf ]; then + exit 0 +fi + +# IPv4 link-local addresses (zeroconf) are +# only applicable on the 'inet' address family +[ "X$ADDRFAM" != "Xinet" ] && exit 0 + +# However there are some methods where it doesn't +# make any sense to configure an IPv4LL address + +# not on loopback +[ "X$METHOD" = "Xloopback" ] && exit 0 + +# not on ppp or wvdial either +[ "X$METHOD" = "Xppp" ] && exit 0 +[ "X$METHOD" = "Xwvdial" ] && exit 0 + +# The administrator may have blacklisted interfaces +# or only want zeroconf in a fallback situation +[ -f /etc/default/zeroconf ] && + . /etc/default/zeroconf + +[ -n "$DISABLE" ] && exit 0 + +for BLACK in $IFBLACKLIST; do + case $IFACE in + $BLACK) + exit 0 + ;; + esac +done + +# should we only allocate an address if we do not already have one? +if [ -n "$FALLBACK" ]; then + /bin/ip addr show $IFACE scope global | grep -q "inet" + IP=$? + if [ $IP -eq 0 ]; then + /bin/ip route add 169.254.0.0/16 dev $IFACE + exit 0 + fi +fi + +# otherwise, run if we aren't already going +if [ ! -r /var/run/zeroconf.$IFACE.pid ]; then + /usr/sbin/zeroconf -i $IFACE +fi + +exit 0 |