summaryrefslogtreecommitdiffstats
path: root/debian/e-n-if-up
blob: f2bc72e487002ff809aff4d3ac9ea29bf01aa44b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/bash

# put this file in /etc/network/if-up.d/exim4-smarthost
# add an exim4-smarthost smtp.server.example.com::587 line to your interface
# stanza in /etc/network/interfaces

# this will only work for split config, since in non-split config we
# only have a single file which is included and which would need more
# serious string processing to alter. With split config, we can blindly
# overwrite our previous file.

# Environment:
#  MODE = { start | stop }
#  IF_EXIM4_SMARTHOST = hostname[::port]

SMARTHOSTFILE="/etc/exim4/conf.d/main/00_local_DCsmarthost"

if [ -z "$IF_EXIM4_SMARTHOST" ]; then
  exit 0
fi

if [ "$MODE" = 'stop' ]; then
  rm -f $SMARTHOSTFILE
  invoke exim4 reload > /dev/null || true
  exit 0
fi

if [ "$IF_EXIM4_SMARTHOST" = "none" ]; then
  rm -f $SMARTHOSTFILE
  invoke exim4 reload > /dev/null || true
  exit 0
fi

echo "DCsmarthost = ${IF_EXIM4_SMARTHOST}" > $SMARTHOSTFILE

invoke exim4 reload > /dev/null || true
/usr/sbin/exim4 -qqf