2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-31 22:35:15 +00:00

signals: New function signal_name().

This will acquire a new user in an upcoming commit.
This commit is contained in:
Ben Pfaff
2011-04-01 10:22:51 -07:00
parent 67a51a1d85
commit b725cf028c
3 changed files with 30 additions and 12 deletions

View File

@@ -30,6 +30,7 @@
#include "fatal-signal.h"
#include "list.h"
#include "poll-loop.h"
#include "signals.h"
#include "socket-util.h"
#include "util.h"
#include "vlog.h"
@@ -353,17 +354,10 @@ process_status_msg(int status)
struct ds ds = DS_EMPTY_INITIALIZER;
if (WIFEXITED(status)) {
ds_put_format(&ds, "exit status %d", WEXITSTATUS(status));
} else if (WIFSIGNALED(status) || WIFSTOPPED(status)) {
int signr = WIFSIGNALED(status) ? WTERMSIG(status) : WSTOPSIG(status);
const char *name = NULL;
#ifdef HAVE_STRSIGNAL
name = strsignal(signr);
#endif
ds_put_format(&ds, "%s by signal %d",
WIFSIGNALED(status) ? "killed" : "stopped", signr);
if (name) {
ds_put_format(&ds, " (%s)", name);
}
} else if (WIFSIGNALED(status)) {
ds_put_format(&ds, "killed (%s)", signal_name(WTERMSIG(status)));
} else if (WIFSTOPPED(status)) {
ds_put_format(&ds, "stopped (%s)", signal_name(WSTOPSIG(status)));
} else {
ds_put_format(&ds, "terminated abnormally (%x)", status);
}