summaryrefslogtreecommitdiff
path: root/debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in
diff options
context:
space:
mode:
authorRichard A Nelson (Rick) <cowboy@debian.org>2010-11-03 22:05:00 +0000
committerAndreas Beckmann <debian@abeckmann.de>2012-10-01 20:07:50 +0200
commitcb1b9d89c5278ac97b3fee2d39f9219bbda5180f (patch)
tree6a88bbe1d2b1f10e0763a6992ace4d6c4bc05da6 /debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in
parente253e5b372f6123431d41466fc6e33e357d98b57 (diff)
downloadsendmail-debian/8.14.4-2.tar.gz
Imported Debian patch 8.14.4-2debian/8.14.4-2
Diffstat (limited to 'debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in')
-rw-r--r--debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in49
1 files changed, 49 insertions, 0 deletions
diff --git a/debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in b/debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in
new file mode 100644
index 0000000..c517033
--- /dev/null
+++ b/debian/examples/dhcp/dhclient-exit-hooks.d/sendmail.in
@@ -0,0 +1,49 @@
+#!/bin/sh
+#
+# This script is called when a dhcp event occurs.
+#
+# Here is where we'll start/stop sendmail if needed.
+#
+# Written By Richard Nelson <cowboy@debian.org>
+#
+# NOTE: The following lines (without the #) must be in /etc/mail/sendmail.mc:
+# include(`/etc/mail/dialup.m4')dnl
+# include(`/etc/mail/provider.m4')dnl
+#
+# NOTE: The dhcp DNS name is used as the peer name in /etc/mail/peers.
+#
+
+# No need to continue if we're called with an unsupported option
+case "$reason" in
+ EXPIRE|FAIL|RELEASE|STOP) #down... and TIMEOUT too ???
+ ;;
+ BOUND|RENEW|REBIND|REBOOT|TIMEOUT) #up... why TIMEOUT here ???
+ ;;
+ *)
+ return;
+ ;;
+ esac;
+
+# Bring in some script functions to handle dynamic configuration
+. @datadir@/sendmail/dynamic;
+
+# Note the interface that just changed
+update_interface "$interface" "$reason";
+
+# If the domain name has changed, update the provider information
+if [ "$new_domain_name" != "$old_domain_name" ]; then
+ update_provider "$new_domain_name";
+ fi;
+
+# If the ip address has changed, update the host information
+if [ "$new_ip_address" != "$oldnew_ip_address" ]; then
+ update_host "$new_ip_address";
+ fi;
+
+# If anything has been changed, update sendmail.cf and reload
+# Actually, we'll delay the reload because we'll be hit in a moment
+# to handle the change by /etc/network/if-up.d/sendmail
+update_sendmail "dhcp" Delayed;
+
+return;
+