projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
folder: Never display column headers (removed -header).
[mmh]
/
sbr
/
context_save.c
diff --git
a/sbr/context_save.c
b/sbr/context_save.c
index
e62aca8
..
d1371d0
100644
(file)
--- a/
sbr/context_save.c
+++ b/
sbr/context_save.c
@@
-40,7
+40,7
@@
context_save(void)
sigaddset(&set, SIGINT);
sigaddset(&set, SIGQUIT);
sigaddset(&set, SIGTERM);
sigaddset(&set, SIGINT);
sigaddset(&set, SIGQUIT);
sigaddset(&set, SIGTERM);
- SIGPROCMASK(SIG_BLOCK, &set, &oset);
+ sigprocmask(SIG_BLOCK, &set, &oset);
if (!(out = lkfopen(ctxpath, "w")))
adios(ctxpath, "unable to write");
if (!(out = lkfopen(ctxpath, "w")))
adios(ctxpath, "unable to write");
@@
-49,7
+49,7
@@
context_save(void)
fprintf(out, "%s: %s\n", np->n_name, np->n_field);
lkfclose(out, ctxpath);
fprintf(out, "%s: %s\n", np->n_name, np->n_field);
lkfclose(out, ctxpath);
- SIGPROCMASK(SIG_SETMASK, &oset, &set); /* reset the signal mask */
+ sigprocmask(SIG_SETMASK, &oset, &set); /* reset the signal mask */
if (action == 0)
_exit(0); /* we are child, time to die */
if (action == 0)
_exit(0); /* we are child, time to die */
@@
-68,27
+68,23
@@
context_save(void)
static int
m_chkids(void)
{
static int
m_chkids(void)
{
- int i;
pid_t pid;
if (getuid() == geteuid())
return (-1);
pid_t pid;
if (getuid() == geteuid())
return (-1);
- for (i = 0; (pid = fork()) == -1 && i < 5; i++)
- sleep(5);
+ switch (pid = fork()) {
+ case -1:
+ break;
- switch (pid) {
- case -1:
- break;
+ case 0:
+ setgid(getgid());
+ setuid(getuid());
+ break;
- case 0:
- setgid(getgid());
- setuid(getuid());
- break;
-
- default:
- pidwait(pid, -1);
- break;
+ default:
+ pidwait(pid, -1);
+ break;
}
return pid;
}
return pid;