On Thu, Feb 22, 2024 at 06:17:41PM +0100, Paul Holzinger wrote: > --quiet is supposed to silence the "No routable interface" message but > it does not work because the log level was set long after conf_ip4/6() > was called which means it uses the default level which logs everything. > > To address this move the log level logic directly after the option > parsing in conf(). > > Signed-off-by: Paul Holzinger Reviewed-by: David Gibson > --- > conf.c | 10 ++++++++++ > passt.c | 10 ---------- > 2 files changed, 10 insertions(+), 10 deletions(-) > > diff --git a/conf.c b/conf.c > index 9c99531..17cf279 100644 > --- a/conf.c > +++ b/conf.c > @@ -1646,6 +1646,16 @@ void conf(struct ctx *c, int argc, char **argv) > logfile, logsize); > } > > + /* Once the log mask is not LOG_EARLY, we will no longer log to stderr > + * if there was a log file specified. > + */ > + if (c->debug) > + __setlogmask(LOG_UPTO(LOG_DEBUG)); > + else if (c->quiet) > + __setlogmask(LOG_UPTO(LOG_WARNING)); > + else > + __setlogmask(LOG_UPTO(LOG_INFO)); > + > nl_sock_init(c, false); > if (!v6_only) > c->ifi4 = conf_ip4(ifi4, &c->ip4, c->mac); > diff --git a/passt.c b/passt.c > index 5d7e7c4..a061f2b 100644 > --- a/passt.c > +++ b/passt.c > @@ -320,16 +320,6 @@ int main(int argc, char **argv) > if (isolate_prefork(&c)) > die("Failed to sandbox process, exiting"); > > - /* Once the log mask is not LOG_EARLY, we will no longer log to stderr > - * if there was a log file specified. > - */ > - if (c.debug) > - __setlogmask(LOG_UPTO(LOG_DEBUG)); > - else if (c.quiet) > - __setlogmask(LOG_UPTO(LOG_WARNING)); > - else > - __setlogmask(LOG_UPTO(LOG_INFO)); > - > if (!c.foreground) > __daemon(pidfile_fd, devnull_fd); > else -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson