rc.dovecot 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #!@l_prefix@/bin/openpkg rc
  2. ##
  3. ## rc.dovecot -- Run-Commands
  4. ##
  5. %config
  6. dovecot_enable="$openpkg_rc_def"
  7. dovecot_log_prolog="true"
  8. dovecot_log_epilog="true"
  9. dovecot_log_numfiles="10"
  10. dovecot_log_minsize="1M"
  11. dovecot_log_complevel="9"
  12. dovecot_deliver_log_prolog="true"
  13. dovecot_deliver_log_epilog="true"
  14. dovecot_deliver_log_numfiles="10"
  15. dovecot_deliver_log_minsize="1M"
  16. dovecot_deliver_log_complevel="9"
  17. <with_pop3d>
  18. POP_type="dovecot"
  19. POP_logfile="@l_prefix@/var/dovecot/log/dovecot.log"
  20. </with_pop3d>
  21. %common
  22. dovecot_pidfile="@l_prefix@/var/dovecot/run/master.pid"
  23. dovecot_signal () {
  24. [ -f $dovecot_pidfile ] && kill -$1 `cat $dovecot_pidfile`
  25. }
  26. %status -u @l_susr@ -o
  27. dovecot_usable="unknown"
  28. dovecot_active="no"
  29. rcService dovecot enable yes && \
  30. dovecot_signal 0 && dovecot_active="yes"
  31. echo "dovecot_enable=\"$dovecot_enable\""
  32. echo "dovecot_usable=\"$dovecot_usable\""
  33. echo "dovecot_active=\"$dovecot_active\""
  34. %start -u @l_susr@
  35. rcService dovecot enable yes || exit 0
  36. rcService dovecot active yes && exit 0
  37. @l_prefix@/sbin/dovecot
  38. %stop -u @l_susr@
  39. rcService dovecot enable yes || exit 0
  40. rcService dovecot active no && exit 0
  41. dovecot_signal TERM
  42. sleep 2
  43. rm -f $dovecot_pidfile >/dev/null 2>&1 || true
  44. %restart -u @l_susr@
  45. rcService dovecot enable yes || exit 0
  46. rcService dovecot active no && exit 0
  47. rc dovecot stop start
  48. %reload -u @l_susr@
  49. rcService dovecot enable yes || exit 0
  50. rcService dovecot active no && exit 0
  51. dovecot_signal HUP
  52. %daily -u @l_susr@
  53. rcService dovecot enable yes || exit 0
  54. rcTmp -i
  55. hintfile=`rcTmp -f -n hint`
  56. shtool rotate -f \
  57. -n ${dovecot_log_numfiles} -s ${dovecot_log_minsize} -d \
  58. -z ${dovecot_log_complevel} -m 600 -o @l_susr@ -g @l_sgrp@ \
  59. -P "${dovecot_log_prolog}" \
  60. -E "${dovecot_log_epilog}; echo 1 >$hintfile" \
  61. @l_prefix@/var/dovecot/log/dovecot.log
  62. if [ -s $hintfile ]; then
  63. dovecot_signal USR1
  64. fi
  65. rcTmp -k
  66. shtool rotate -f \
  67. -n ${dovecot_deliver_log_numfiles} -s ${dovecot_deliver_log_minsize} -d \
  68. -z ${dovecot_deliver_log_complevel} -m 600 -o @l_rusr@ -g @l_rgrp@ \
  69. -P "${dovecot_deliver_log_prolog}" \
  70. -E "${dovecot_deliver_log_epilog}" \
  71. @l_prefix@/var/dovecot/log/deliver.log