handle_debug_table() returns the result of the netlink dump function directly. This is a negative errno code on failure and main() passes it straight to exit(). The process then terminates with a mangled exit status like 161 (-95 & 0xff).
Limit the return codes to EXIT_SUCCESS and EXIT_FAILURE. Signed-off-by: Sven Eckelmann <[email protected]> --- debug.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/debug.c b/debug.c index 22cbcb8..13a0a43 100644 --- a/debug.c +++ b/debug.c @@ -152,5 +152,8 @@ int handle_debug_table(struct state *state, int argc, char **argv) err = debug_table->netlink_fn(state, orig_iface, read_opt, orig_timeout, watch_interval); - return err; + if (err < 0) + return EXIT_FAILURE; + + return EXIT_SUCCESS; } -- 2.47.3
