Check exit code from dup() in spawn() and log error if it fail.
Patch from Michał Kulling.
This commit is contained in:
parent
d53cccb542
commit
ca4561271e
@ -89,6 +89,8 @@ sysvinit (2.89) UNRELEASED; urgency=low
|
|||||||
define INIT_FIFO.
|
define INIT_FIFO.
|
||||||
* Use narrowly scoped file descriptor for handling opened TTY in
|
* Use narrowly scoped file descriptor for handling opened TTY in
|
||||||
spawn(). Patch from Michał Kulling.
|
spawn(). Patch from Michał Kulling.
|
||||||
|
* Check exit code from dup() in spawn() and log error if it fail.
|
||||||
|
Patch from Michał Kulling.
|
||||||
|
|
||||||
-- Petter Reinholdtsen <pere@hungry.com> Sun Apr 11 11:28:55 CEST 2010
|
-- Petter Reinholdtsen <pere@hungry.com> Sun Apr 11 11:28:55 CEST 2010
|
||||||
|
|
||||||
|
22
src/init.c
22
src/init.c
@ -1111,8 +1111,15 @@ pid_t spawn(CHILD *ch, int *res)
|
|||||||
if ((ftty = console_open(O_RDWR|O_NOCTTY)) >= 0) {
|
if ((ftty = console_open(O_RDWR|O_NOCTTY)) >= 0) {
|
||||||
/* Take over controlling tty by force */
|
/* Take over controlling tty by force */
|
||||||
(void)ioctl(ftty, TIOCSCTTY, 1);
|
(void)ioctl(ftty, TIOCSCTTY, 1);
|
||||||
dup(ftty);
|
|
||||||
dup(ftty);
|
if(dup(ftty) < 0){
|
||||||
|
initlog(L_VB, "cannot duplicate console fd");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(dup(ftty) < 0){
|
||||||
|
initlog(L_VB, "cannot duplicate console fd");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -1181,8 +1188,15 @@ pid_t spawn(CHILD *ch, int *res)
|
|||||||
strerror(errno));
|
strerror(errno));
|
||||||
fd = open("/dev/null", O_RDWR);
|
fd = open("/dev/null", O_RDWR);
|
||||||
}
|
}
|
||||||
dup(fd);
|
|
||||||
dup(fd);
|
if(dup(fd) < 0) {
|
||||||
|
initlog(L_VB, "cannot duplicate /dev/null fd");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(dup(fd) < 0) {
|
||||||
|
initlog(L_VB, "cannot duplicate /dev/null fd");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user