diff --git a/packaging/freebsd/colibri_daemon.in b/packaging/freebsd/colibri_daemon.in index 63f6260..9f0f454 100644 --- a/packaging/freebsd/colibri_daemon.in +++ b/packaging/freebsd/colibri_daemon.in @@ -84,6 +84,11 @@ colibri_daemon_prestart() install -d -o "${colibri_daemon_user}" -g "${colibri_daemon_group}" -m 0750 \ "$(/usr/bin/dirname "${colibri_daemon_logfile}")" + # Remove stale runtime files while rc.d is still root. The daemon process + # runs as colibri and cannot unlink a stale socket left behind by a prior + # root/corrupt manual start. + rm -f "${colibri_daemon_socket}" "${pidfile}" "${supervisor_pidfile}" + # Config is passed to the child via the environment. export COLIBRI_DAEMON_DATA_DIR="${colibri_daemon_data_dir}" export COLIBRI_DAEMON_SOCKET="${colibri_daemon_socket}"