rc.openldap 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #!@l_prefix@/bin/openpkg rc
  2. ##
  3. ## rc.openldap -- Run-Commands
  4. ##
  5. %config
  6. openldap_enable="$openpkg_rc_def"
  7. openldap_flags=""
  8. openldap_url="ldap://127.0.0.1:389/"
  9. openldap_log_prolog="true"
  10. openldap_log_epilog="true"
  11. openldap_log_numfiles="10"
  12. openldap_log_minsize="1M"
  13. openldap_log_complevel="9"
  14. %common
  15. openldap_slapd_cfgfile="@l_prefix@/etc/openldap/slapd.conf"
  16. openldap_slapd_pidfile="@l_prefix@/var/openldap/run/slapd.pid"
  17. openldap_slurpd_pidfile="@l_prefix@/var/openldap/run/slurpd.pid"
  18. openldap_slapd_signal () {
  19. [ -f $openldap_slapd_pidfile ] && kill -$1 `cat $openldap_slapd_pidfile`
  20. }
  21. openldap_slurpd_signal () {
  22. [ -f $openldap_slurpd_pidfile ] && kill -$1 `cat $openldap_slurpd_pidfile`
  23. }
  24. openldap_slurpd_needed () {
  25. [ ".`grep '^replogfile' $openldap_slapd_cfgfile`" != . ] && return 0
  26. return 1
  27. }
  28. %status -u @l_susr@ -o
  29. openldap_usable="unknown"
  30. openldap_active="no"
  31. rcService openldap enable yes && \
  32. openldap_slapd_signal 0 && openldap_active="yes"
  33. rcService openldap enable yes && openldap_slurpd_needed && \
  34. openldap_slurpd_signal 0 && openldap_active="yes"
  35. echo "openldap_enable=\"$openldap_enable\""
  36. echo "openldap_usable=\"$openldap_usable\""
  37. echo "openldap_active=\"$openldap_active\""
  38. %start -p 300 -u @l_susr@
  39. rcService openldap enable yes || exit 0
  40. openldap_slapd_signal 0
  41. if [ $? -ne 0 ]; then
  42. flags="$openldap_flags"
  43. echo $flags | grep -- -h >/dev/null
  44. if [ $? -ne 0 -a ".$openldap_url" != . ]; then
  45. flags="$flags -h \"$openldap_url\""
  46. fi
  47. eval @l_prefix@/libexec/openldap/slapd $flags || exit $?
  48. fi
  49. openldap_slurpd_needed || exit 0
  50. openldap_slurpd_signal 0
  51. if [ $? -ne 0 ]; then
  52. @l_prefix@/libexec/openldap/slurpd || exit $?
  53. fi
  54. %stop -p 700 -u @l_susr@
  55. rcService openldap enable yes || exit 0
  56. rcService openldap active no && exit 0
  57. openldap_slapd_signal INT
  58. openldap_slurpd_signal INT
  59. sleep 2
  60. %restart -u @l_susr@
  61. rcService openldap enable yes || exit 0
  62. rcService openldap active no && exit 0
  63. rc openldap stop start
  64. %daily -u @l_susr@
  65. rcService openldap enable yes || exit 0
  66. shtool rotate -f \
  67. -n ${openldap_log_numfiles} -s ${openldap_log_minsize} -d \
  68. -z ${openldap_log_complevel} -m 644 -o @l_susr@ -g @l_mgrp@ \
  69. -P "${openldap_log_prolog}" \
  70. -E "${openldap_log_epilog}; rc openldap restart" \
  71. @l_prefix@/var/openldap/openldap.log