projects
/
paraslash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
paraslash 0.3.1
[paraslash.git]
/
signal.c
diff --git
a/signal.c
b/signal.c
index
3f3dbf6
..
78e788d
100644
(file)
--- a/
signal.c
+++ b/
signal.c
@@
-1,9
+1,9
@@
/*
/*
- * Copyright (C) 2004-200
6
Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2004-200
8
Andre Noll <maan@systemlinux.org>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
-/** \file signal.c
signal handling functions
*/
+/** \file signal.c
Signal handling functions.
*/
#include <signal.h>
#include <sys/types.h>
#include <signal.h>
#include <sys/types.h>
@@
-48,7
+48,7
@@
int para_signal_init(void)
goto err_out;
return signal_pipe[0];
err_out:
goto err_out;
return signal_pipe[0];
err_out:
- PARA_EMERG_LOG("%s\n",
PARA_STRERROR
(-ret));
+ PARA_EMERG_LOG("%s\n",
para_strerror
(-ret));
exit(EXIT_FAILURE);
}
exit(EXIT_FAILURE);
}
@@
-85,13
+85,13
@@
int para_reap_child(pid_t *pid)
if (*pid < 0)
return -ERRNO_TO_PARA_ERROR(errno);
if (WIFEXITED(status))
if (*pid < 0)
return -ERRNO_TO_PARA_ERROR(errno);
if (WIFEXITED(status))
- PARA_DEBUG_LOG("child %i exited. Exit status: %i\n", *pid,
+ PARA_DEBUG_LOG("child %i exited. Exit status: %i\n",
(int)
*pid,
WEXITSTATUS(status));
else if (WIFSIGNALED(status))
WEXITSTATUS(status));
else if (WIFSIGNALED(status))
- PARA_DEBUG_LOG("child %i was killed by signal %i\n", *pid,
+ PARA_DEBUG_LOG("child %i was killed by signal %i\n",
(int)
*pid,
WTERMSIG(status));
else
WTERMSIG(status));
else
- PARA_WARNING_LOG("child %i terminated abormally\n", *pid);
+ PARA_WARNING_LOG("child %i terminated abormally\n",
(int)
*pid);
return 1;
}
return 1;
}
@@
-137,13
+137,17
@@
int para_next_signal(void)
int s;
ssize_t r;
int s;
ssize_t r;
- if ((r = read(signal_pipe[0], &s, sizeof(s)) == sizeof(s)) > 0) {
+ r = read(signal_pipe[0], &s, sizeof(s));
+ if (r == sizeof(s)) {
PARA_DEBUG_LOG("next signal: %d\n", s);
return s;
}
return r < 0 && (errno != EAGAIN)? 0 : -E_SIGNAL_READ;
}
PARA_DEBUG_LOG("next signal: %d\n", s);
return s;
}
return r < 0 && (errno != EAGAIN)? 0 : -E_SIGNAL_READ;
}
+/**
+ * Close the signal pipe.
+ */
void para_signal_shutdown(void)
{
close(signal_pipe[1]);
void para_signal_shutdown(void)
{
close(signal_pipe[1]);