From deb30fa40d8131132d2d05b4439a0d773766f21b Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Sat, 2 Sep 2006 14:45:59 +0000 Subject: ship dhclient hook scripts for using ipv4ll as fallback solution where DHCP is not available. Only installed on Debian for now, since only Debian provides the necessary hook directories. git-svn-id: file:///home/lennart/svn/public/avahi/trunk@1311 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- avahi-autoipd/Makefile.am | 28 +++++++++++++++++++++++++++- avahi-autoipd/dhclient-enter-hook.in | 35 +++++++++++++++++++++++++++++++++++ avahi-autoipd/dhclient-exit-hook.in | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 97 insertions(+), 1 deletion(-) create mode 100755 avahi-autoipd/dhclient-enter-hook.in create mode 100755 avahi-autoipd/dhclient-exit-hook.in diff --git a/avahi-autoipd/Makefile.am b/avahi-autoipd/Makefile.am index 2c55241..7fda8c7 100644 --- a/avahi-autoipd/Makefile.am +++ b/avahi-autoipd/Makefile.am @@ -45,7 +45,33 @@ avahi_autoipd_LDADD = $(AM_LDADD) $(LIBDAEMON_LIBS) pkgsysconf_SCRIPTS=avahi-autoipd.action +if TARGET_DEBIAN + +noinst_SCRIPTS = dhclient-enter-hook dhclient-exit-hook + +dhclient-enter-hook: dhclient-enter-hook.in + sed -e 's,@sbindir\@,$(sbindir),g' $< > $@ + chmod +x $@ + +dhclient-exit-hook: dhclient-exit-hook.in + sed -e 's,@sbindir\@,$(sbindir),g' $< > $@ + chmod +x $@ + +BUILD = dhclient-exit-hook dhclient-enter-hook + +dhcliententerdir = $(sysconfdir)/dhcp3/dhclient-enter-hooks.d +dhclientexitdir = $(sysconfdir)/dhcp3/dhclient-exit-hooks.d + +install-exec-hook: dhclient-exit-hook dhclient-enter-hook + $(INSTALL) $(srcdir)/dhclient-enter-hook $(DESTDIR)$(dhcliententerdir)/avahi-autoipd + $(INSTALL) $(srcdir)/dhclient-exit-hook $(DESTDIR)$(dhclientexitdir)/avahi-autoipd + endif + + endif +endif + +EXTRA_DIST=avahi-autoipd.action dhclient-enter-hook.in dhclient-exit-hook.in -EXTRA_DIST=avahi-autoipd.action +CLEANFILES=dhclient-enter-hook dhclient-exit-hook diff --git a/avahi-autoipd/dhclient-enter-hook.in b/avahi-autoipd/dhclient-enter-hook.in new file mode 100755 index 0000000..8efd468 --- /dev/null +++ b/avahi-autoipd/dhclient-enter-hook.in @@ -0,0 +1,35 @@ +#!/bin/sh + +# $Id$ +# +# This file is part of avahi. +# +# avahi is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# avahi is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public +# License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with avahi; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. + +set -e + +case "$reason" in + MEDIUM|ARPCHECK|ARPSEND|NBI) + ;; + + PREINIT|BOUND|RENEW|REBIND|REBOOT|STOP) + @sbindir@/avahi-autoipd -k $interface 2> /dev/null + ;; + + EXPIRE|FAIL|RELEASE|TIMEOUT) + # Starting avahi-autoipd is left for the exit hook + ;; +esac diff --git a/avahi-autoipd/dhclient-exit-hook.in b/avahi-autoipd/dhclient-exit-hook.in new file mode 100755 index 0000000..a844b77 --- /dev/null +++ b/avahi-autoipd/dhclient-exit-hook.in @@ -0,0 +1,35 @@ +#!/bin/sh + +# $Id$ +# +# This file is part of avahi. +# +# avahi is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# avahi is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public +# License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with avahi; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. + +set -e + +case "$reason" in + MEDIUM|ARPCHECK|ARPSEND|NBI) + ;; + + PREINIT|BOUND|RENEW|REBIND|REBOOT|STOP) + # Stoping avahi-autoipd is left for the enter hook + ;; + + EXPIRE|FAIL|RELEASE|TIMEOUT) + @sbindir@/avahi-autoipd -wD $interface 2> /dev/null + ;; +esac -- cgit