From: Ian Jackson Date: Sun, 5 Oct 2014 23:49:02 +0000 (+0100) Subject: udp: Report authbind exit status as errno value if it seems appropriate X-Git-Tag: base.ipv6-polypath-fixes-2.v1~58 X-Git-Url: https://git.distorted.org.uk/~mdw/secnet/commitdiff_plain/313e4f0fe0eecf9316716535c2a1100a369fa934 udp: Report authbind exit status as errno value if it seems appropriate authbind-helper is documented as indicating an errno value in its exit status. When the exit status is small enough that it's unlikely to have come from the runtime system, print it as an errno value instead of using lg_exitstatus. Signed-off-by: Ian Jackson --- diff --git a/udp.c b/udp.c index a6ab49a..838fd51 100644 --- a/udp.c +++ b/udp.c @@ -259,7 +259,14 @@ bool_t udp_make_socket(struct udpcommon *uc, struct udpsock *us, FAIL("waitpid for authbind"); } if (status) { - lg_exitstatus(FAIL_LG,status,"authbind"); + if (WIFEXITED(status) && WEXITSTATUS(status)<127) { + int es=WEXITSTATUS(status); + lg_perror(FAIL_LG,es, + "authbind exited with error exit status %d;" + " indicates error",es); + } else { + lg_exitstatus(FAIL_LG,status,"authbind"); + } goto failed; } } else {