rc.postgrey 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
  2. ##
  3. ## rc.postgrey -- Run-Commands
  4. ##
  5. %config
  6. postgrey_enable="$openpkg_rc_def"
  7. postgrey_delay="300"
  8. postgrey_maxage="28"
  9. postgrey_retrywin="2"
  10. postgrey_action="DEFER_IF_PERMIT"
  11. postgrey_text="Greylisted (%s seconds remaining)"
  12. postgrey_log_prolog="true"
  13. postgrey_log_epilog="true"
  14. postgrey_log_numfiles="10"
  15. postgrey_log_minsize="1M"
  16. postgrey_log_complevel="9"
  17. %common
  18. postgrey_wlclnt="@l_prefix@/etc/postgrey/whitelist.clients"
  19. postgrey_wlrcpt="@l_prefix@/etc/postgrey/whitelist.recipients"
  20. postgrey_pidfile="@l_prefix@/var/postgrey/postgrey.pid"
  21. postgrey_socket="@l_prefix@/var/postgrey/postgrey.socket"
  22. postgrey_dbdir="@l_prefix@/var/postgrey"
  23. postgrey_signal () {
  24. [ -f $postgrey_pidfile ] && kill -$1 `cat $postgrey_pidfile`
  25. }
  26. %status -u @l_rusr@ -o
  27. postgrey_usable="unknown"
  28. postgrey_active="no"
  29. rcService postgrey enable yes && \
  30. postgrey_signal 0 && postgrey_active="yes"
  31. echo "postgrey_enable=\"$postgrey_enable\""
  32. echo "postgrey_usable=\"$postgrey_usable\""
  33. echo "postgrey_active=\"$postgrey_active\""
  34. %start -u @l_rusr@
  35. rcService postgrey enable yes || exit 0
  36. rcService postgrey active yes && exit 0
  37. @l_prefix@/sbin/postgrey \
  38. --daemonize \
  39. --user="@l_rusr@" \
  40. --pidfile="$postgrey_pidfile" \
  41. --unix="$postgrey_socket" \
  42. --dbdir="$postgrey_dbdir" \
  43. --delay="$postgrey_delay" \
  44. --max-age="$postgrey_maxage" \
  45. --retry-window="$postgrey_retrywin" \
  46. --whitelist-clients="$postgrey_wlclnt" \
  47. --whitelist-recipients="$postgrey_wlrcpt" \
  48. --greylist-action="$postgrey_action" \
  49. --greylist-text="$postgrey_text"
  50. %stop -u @l_rusr@
  51. rcService postgrey enable yes || exit 0
  52. rcService postgrey active no && exit 0
  53. postgrey_signal TERM
  54. rm -f $postgrey_pidfile 2>/dev/null || true
  55. %restart -u @l_rusr@
  56. rcService postgrey enable yes || exit 0
  57. rcService postgrey active no && exit 0
  58. rc postgrey stop
  59. sleep 2
  60. rc postgrey start
  61. %daily -u @l_susr@
  62. rcService postgrey enable yes || exit 0
  63. shtool rotate -f \
  64. -n ${postgrey_log_numfiles} -s ${postgrey_log_minsize} -d \
  65. -z ${postgrey_log_complevel} -o @l_rusr@ -g @l_mgrp@ -m 644 \
  66. -P "${postgrey_log_prolog}" \
  67. -E "${postgrey_log_epilog}; rc postgrey restart" \
  68. $postgrey_logfile