The most apparent issue fixed by this series is the one from 4/6: with a log file configured, we wouldn't print to standard error anymore, during initialisation, which means that users such as libvirt lost the ability to report meaningful error messages that occurred during initialisation, in that case. v4: - in 4/8, name the new flag 'log_daemonised' instead of 'log_daemon_ready' v3: - add 2/8: we don't really need --stderr anymore - in 5/8, save errno at the beginning of the _perror() helper - in 7/8, avoid assigning errno to whatever return code we have just for the sake of using the new helpers: strerror() is actually less convoluted than that - add 8/8: there's no need to call __openlog() with a log file v2: - turn flag bitmap into simple, separate boolean flags - move errno description after message in _perror() functions - make some of the old perror() messages more descriptive Stefano Brivio (8): conf, passt: Don't try to log to stderr after we close it conf, passt: Make --stderr do nothing, and deprecate it conf, log: Instead of abusing log levels, add log_conf_parsed flag log, passt: Always print to stderr before initialisation is complete log: Add _perror() logging function variants treewide: Replace perror() calls with calls to logging functions treewide: Replace strerror() calls conf, passt: Don't call __openlog() if a log file is used arch.c | 10 ++++---- conf.c | 41 +++++++++++--------------------- fwd.c | 2 +- isolation.c | 46 +++++++++++++++--------------------- log.c | 63 ++++++++++++++++++++++++++++++------------------- log.h | 25 ++++++++++++++++---- netlink.c | 4 ++-- passt.1 | 9 +++---- passt.c | 68 ++++++++++++++++++++--------------------------------- passt.h | 2 -- pasta.c | 27 +++++++++------------ pcap.c | 8 +++---- tap.c | 14 +++++------ tcp.c | 24 +++++++------------ util.c | 12 ++++------ 15 files changed, 165 insertions(+), 190 deletions(-) -- 2.43.0