summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--avahi-autoipd/Makefile.am28
-rwxr-xr-xavahi-autoipd/dhclient-enter-hook.in35
-rwxr-xr-xavahi-autoipd/dhclient-exit-hook.in35
3 files changed, 97 insertions, 1 deletions
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