From 6493d5597765663029bcdb357fd6bc245618acf4 Mon Sep 17 00:00:00 2001 From: bol-van Date: Wed, 12 Mar 2025 14:45:52 +0300 Subject: [PATCH] tpws: move systemd notify deeper --- tpws/tpws.c | 14 -------------- tpws/tpws_conn.c | 15 +++++++++++++++ 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/tpws/tpws.c b/tpws/tpws.c index 605ed66..b3c6801 100644 --- a/tpws/tpws.c +++ b/tpws/tpws.c @@ -30,10 +30,6 @@ #include #endif -#ifdef USE_SYSTEMD -#include -#endif - #include "tpws.h" #ifdef BSD @@ -1692,15 +1688,6 @@ static const char *bindll_s[] = { "unwanted","no","prefer","force" }; #define PRINT_VER printf("self-built version %s %s\n\n", __DATE__, __TIME__) #endif -static void notify_ready(void) -{ -#ifdef USE_SYSTEMD - int r = sd_notify(0, "READY=1"); - if (r < 0) - DLOG_ERR("sd_notify: %s\n", strerror(-r)); -#endif -} - int main(int argc, char *argv[]) { int i, listen_fd[MAX_BINDS], yes = 1, retval = 0, if_index, exit_v=EXIT_FAILURE; @@ -1978,7 +1965,6 @@ int main(int argc, char *argv[]) signal(SIGHUP, onhup); signal(SIGUSR2, onusr2); - notify_ready(); retval = event_loop(listen_fd,params.binds_last+1); exit_v = retval < 0 ? EXIT_FAILURE : EXIT_SUCCESS; DLOG_CONDUP("Exiting\n"); diff --git a/tpws/tpws_conn.c b/tpws/tpws_conn.c index de6eed9..06ffe5f 100644 --- a/tpws/tpws_conn.c +++ b/tpws/tpws_conn.c @@ -16,6 +16,10 @@ #include #include +#ifdef USE_SYSTEMD +#include +#endif + #include "tpws.h" #include "tpws_conn.h" #include "redirect.h" @@ -25,6 +29,15 @@ #include "hostlist.h" #include "linux_compat.h" +static void notify_ready(void) +{ +#ifdef USE_SYSTEMD + int r = sd_notify(0, "READY=1"); + if (r < 0) + DLOG_ERR("sd_notify: %s\n", strerror(-r)); +#endif +} + // keep separate legs counter. counting every time thousands of legs can consume cpu static int legs_local, legs_remote; /* @@ -1542,6 +1555,8 @@ int event_loop(const int *listen_fd, size_t listen_fd_ct) VPRINT("initialized multi threaded resolver with %d threads\n",resolver_thread_count()); } + notify_ready(); + for(;;) { ReloadCheck();