|
Lines 3-11
Link Here
|
| 3 |
# $FreeBSD: ports/mail/dk-milter/files/milter-dk.sh.in,v 1.2 2006/01/15 09:11:04 pav Exp $ |
3 |
# $FreeBSD: ports/mail/dk-milter/files/milter-dk.sh.in,v 1.2 2006/01/15 09:11:04 pav Exp $ |
| 4 |
# |
4 |
# |
| 5 |
|
5 |
|
| 6 |
# PROVIDE: milterdk |
6 |
# PROVIDE: milter-dk |
| 7 |
# REQUIRE: DAEMON |
7 |
# REQUIRE: DAEMON |
| 8 |
# BEFORE: sendmail |
8 |
# BEFORE: mail |
| 9 |
# KEYWORD: shutdown |
9 |
# KEYWORD: shutdown |
| 10 |
|
10 |
|
| 11 |
# Define these milterdk_* variables in one of these files: |
11 |
# Define these milterdk_* variables in one of these files: |
|
Lines 13-40
Link Here
|
| 13 |
# /etc/rc.conf.local |
13 |
# /etc/rc.conf.local |
| 14 |
# /etc/rc.conf.d/milterdk |
14 |
# /etc/rc.conf.d/milterdk |
| 15 |
# |
15 |
# |
|
|
16 |
# milterdk_enable (bool): Set to "NO" by default. |
| 17 |
# Set it to "YES" to enable dk-milter |
| 18 |
# milterdk_profiles (list): Set to "" by default. |
| 19 |
# Define your profiles here. |
| 20 |
# milterdk_socket (str): Path to the milter socket. |
| 21 |
# milterdk_domain (str): Domainpart of From: in mails to sign. |
| 22 |
# milterdk_key (str): Path to the private key file to sign with. |
| 23 |
# milterdk_flags (str): Flags passed to start command. |
| 24 |
# |
| 25 |
# milterdk_${profile}_* : Variables per profile. |
| 26 |
# Sockets must be different from each other. |
| 27 |
# |
| 16 |
# DO NOT CHANGE THESE DEFAULT VALUES HERE |
28 |
# DO NOT CHANGE THESE DEFAULT VALUES HERE |
| 17 |
# |
29 |
# |
| 18 |
milterdk_enable=${milterdk_enable:-"NO"} |
30 |
milterdk_enable=${milterdk_enable:-"NO"} |
|
|
31 |
milterdk_profiles=${milterdk_profiles:-} |
| 19 |
milterdk_socket=${milterdk_socket:-"local:/var/run/dk-filter"} |
32 |
milterdk_socket=${milterdk_socket:-"local:/var/run/dk-filter"} |
| 20 |
milterdk_pid=${milterdk_pid:-"/var/run/dk-filter.pid"} |
|
|
| 21 |
milterdk_domain=${milterdk_domain:-"example.com"} |
33 |
milterdk_domain=${milterdk_domain:-"example.com"} |
| 22 |
milterdk_key=${milterdk_key:-"/var/db/domainkeys/default.key.pem"} |
34 |
milterdk_key=${milterdk_key:-"/var/db/domainkeys/default.key.pem"} |
| 23 |
milterdk_flags=${milterdk_flags:-"-d ${milterdk_domain} -c nofws -H -m MSA \ |
35 |
## milterdk_flags expands escaped variables later. |
| 24 |
-s ${milterdk_key} -S default"} |
36 |
milterdk_flags=${milterdk_flags:-"-d \${milterdk_domain\} -c nofws -H -m MSA \ |
|
|
37 |
-s \${milterdk_key\} -S default"} |
| 25 |
|
38 |
|
| 26 |
. %%RC_SUBR%% |
39 |
. %%RC_SUBR%% |
| 27 |
|
40 |
|
| 28 |
name="milterdk" |
41 |
name="milterdk" |
| 29 |
pidfile=${milterdk_pid} |
|
|
| 30 |
rcvar=`set_rcvar` |
42 |
rcvar=`set_rcvar` |
|
|
43 |
|
| 44 |
start_precmd="dk_prepcmd" |
| 45 |
stop_postcmd="dk_prepcmd" |
| 31 |
command="%%PREFIX%%/libexec/dk-filter" |
46 |
command="%%PREFIX%%/libexec/dk-filter" |
| 32 |
command_args="-l -p ${milterdk_socket} -P ${milterdk_pid}" |
47 |
_pidprefix="/var/run/dk-filter" |
| 33 |
stop_postcmd="dk_postcmd" |
48 |
pidfile="${_pidprefix}.pid" |
| 34 |
|
49 |
|
| 35 |
load_rc_config $name |
50 |
load_rc_config $name |
| 36 |
|
51 |
|
| 37 |
dk_postcmd () |
52 |
if [ -n "$2" ]; then |
|
|
53 |
profile="$2" |
| 54 |
if [ "x${milterdk_profiles}" != "x" ]; then |
| 55 |
pidfile="${_pidprefix}.${profile}.pid" |
| 56 |
eval milterdk_enable="\${milterdk_${profile}_enable:-${milterdk_enable}}" |
| 57 |
eval milterdk_socket="\${milterdk_${profile}_socket:-}" |
| 58 |
if [ "x${milterdk_socket}" = "x" ];then |
| 59 |
echo "You must define a socket (milterdk_${profile}_socket)" |
| 60 |
exit 1 |
| 61 |
fi |
| 62 |
eval milterdk_domain="\${milterdk_${profile}_domain:-${milterdk_domain}}" |
| 63 |
eval milterdk_key="\${milterdk_${profile}_key:-${milterdk_key}}" |
| 64 |
eval milterdk_flags="\${milterdk_${profile}_flags:-${milterdk_flags}}" |
| 65 |
command_args="-l -p ${milterdk_socket} -P ${pidfile}" |
| 66 |
else |
| 67 |
echo "$0: extra argument ignored" |
| 68 |
fi |
| 69 |
else |
| 70 |
if [ "x${milterdk_profiles}" != "x" -a "x$1" != "x" ]; then |
| 71 |
if [ "x$1" != "xrestart" ]; then |
| 72 |
for profile in ${milterdk_profiles}; do |
| 73 |
echo "===> milterdk profile: ${profile}" |
| 74 |
%%PREFIX%%/etc/rc.d/milter-dk.sh $1 ${profile} |
| 75 |
retcode="$?" |
| 76 |
if [ "0${retcode}" -ne 0 ]; then |
| 77 |
failed="${profile} (${retcode}) ${failed:-}" |
| 78 |
else |
| 79 |
success="${profile} ${success:-}" |
| 80 |
fi |
| 81 |
done |
| 82 |
exit 0 |
| 83 |
else |
| 84 |
restart_precmd="" |
| 85 |
fi |
| 86 |
else |
| 87 |
milterdk_flags=${milterdk_flags} |
| 88 |
command_args="-l -p ${milterdk_socket} -P ${pidfile}" |
| 89 |
fi |
| 90 |
fi |
| 91 |
|
| 92 |
dk_prepcmd () |
| 38 |
{ |
93 |
{ |
| 39 |
if [ -S ${milterdk_socket##local:} ] ; then |
94 |
if [ -S ${milterdk_socket##local:} ] ; then |
| 40 |
rm -f ${milterdk_socket##local:} |
95 |
rm -f ${milterdk_socket##local:} |