/* SPDX-License-Identifier: ISC */ #include "init.h" void print_status(const svc_run_data_t *rt) { const char *str; char pre = '\n'; switch (rt->state) { case STATE_RUNNING: if (rt->svc->type == SVC_WAIT) { str = "\033[22;33m .. \033[0m"; } else { str = "\033[22;32m UP \033[0m"; } break; case STATE_COMPLETED: if (rt->svc->type == SVC_WAIT) pre = '\r'; str = "\033[22;32mDONE\033[0m"; break; case STATE_FAILED: if (rt->svc->type == SVC_WAIT) pre = '\r'; str = "\033[22;31mFAIL\033[0m"; break; default: return; } printf("%c[%s] %s", pre, str, rt->svc->desc); fflush(stdout); }