diff options
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | lib/signals.c | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 298ea85ab..a79109bda 100644 --- a/configure.ac +++ b/configure.ac @@ -101,6 +101,7 @@ OVS_CHECK_IF_DL OVS_CHECK_STRTOK_R OVS_CHECK_LINUX_AF_XDP AC_CHECK_DECLS([sys_siglist], [], [], [[#include <signal.h>]]) +AC_CHECK_FUNCS([sigdescr_np]) AC_CHECK_DECLS([malloc_trim], [], [], [[#include <malloc.h>]]) AC_CHECK_MEMBERS([struct stat.st_mtim.tv_nsec, struct stat.st_mtimensec], [], [], [[#include <sys/stat.h>]]) diff --git a/lib/signals.c b/lib/signals.c index 70c53adc6..1b3a80783 100644 --- a/lib/signals.c +++ b/lib/signals.c @@ -56,6 +56,11 @@ signal_name(int signum, char *namebuf, size_t bufsize) return name; } } +#elif HAVE_SIGDESCR_NP + const char *name = sigdescr_np(signum); + if (name) { + return name; + } #endif snprintf(namebuf, bufsize, "signal %d", signum); |