aboutgitcodebugslistschat
diff options
context:
space:
mode:
-rw-r--r--passt.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/passt.c b/passt.c
index 7fa1170..3b9b36b 100644
--- a/passt.c
+++ b/passt.c
@@ -204,8 +204,15 @@ int main(int argc, char **argv)
name = basename(argv0);
if (strstr(name, "pasta")) {
sa.sa_handler = pasta_child_handler;
- if (sigaction(SIGCHLD, &sa, NULL) || signal(SIGPIPE, SIG_IGN))
- die("Couldn't install signal handlers");
+ if (sigaction(SIGCHLD, &sa, NULL)) {
+ die("Couldn't install signal handlers: %s",
+ strerror(errno));
+ }
+
+ if (signal(SIGPIPE, SIG_IGN) == SIG_ERR) {
+ die("Couldn't set disposition for SIGPIPE: %s",
+ strerror(errno));
+ }
c.mode = MODE_PASTA;
log_name = "pasta";