You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
773 B

  1. #!/bin/sh /etc/rc.common
  2. USE_PROCD=1
  3. START=25
  4. STOP=85
  5. BIN_PATH="/usr/sbin"
  6. CONF_PATH="/etc/kea"
  7. start_service() {
  8. config_load "kea"
  9. config_foreach start_kea "service"
  10. }
  11. start_kea() {
  12. local cfg="$1"
  13. config_get_bool disabled "$cfg" disabled 0
  14. [ "$disabled" = "0" ] || return
  15. config_get name "$cfg" name "$cfg"
  16. case "$name" in
  17. ctrl_agent|dhcp4|dhcp6|dhcp_ddns)
  18. name="${name/_/-}"
  19. cmd="${BIN_PATH}/kea-${name}"
  20. cnf="${CONF_PATH}/kea-${name}.conf"
  21. ;;
  22. *)
  23. return 0
  24. esac
  25. procd_open_instance "$name"
  26. procd_set_param command "$cmd" -c "$cnf"
  27. procd_set_param env KEA_LOCKFILE_DIR=/tmp
  28. procd_append_param env KEA_PIDFILE_DIR=/tmp
  29. procd_set_param file "$cnf"
  30. procd_set_param stderr 1
  31. procd_set_param stdout 1
  32. procd_close_instance ctrl_agent
  33. }