version 1.223, 2017/07/19 01:15:02 |
version 1.224, 2017/07/24 04:34:28 |
|
|
deadline = (deadline == 0) ? parent_alive_interval : |
deadline = (deadline == 0) ? parent_alive_interval : |
MINIMUM(deadline, parent_alive_interval); |
MINIMUM(deadline, parent_alive_interval); |
if (deadline == 0) { |
if (deadline == 0) { |
*timeoutp = INFTIM; |
*timeoutp = -1; /* INFTIM */ |
} else { |
} else { |
if (deadline > INT_MAX / 1000) |
if (deadline > INT_MAX / 1000) |
*timeoutp = INT_MAX / 1000; |
*timeoutp = INT_MAX / 1000; |
|
|
{ |
{ |
int c_flag = 0, d_flag = 0, D_flag = 0, k_flag = 0, s_flag = 0; |
int c_flag = 0, d_flag = 0, D_flag = 0, k_flag = 0, s_flag = 0; |
int sock, fd, ch, result, saved_errno; |
int sock, fd, ch, result, saved_errno; |
u_int nalloc; |
|
char *shell, *format, *pidstr, *agentsocket = NULL; |
char *shell, *format, *pidstr, *agentsocket = NULL; |
struct rlimit rlim; |
struct rlimit rlim; |
extern int optind; |
extern int optind; |
|
|
char pidstrbuf[1 + 3 * sizeof pid]; |
char pidstrbuf[1 + 3 * sizeof pid]; |
size_t len; |
size_t len; |
mode_t prev_mask; |
mode_t prev_mask; |
int timeout = INFTIM; |
int timeout = -1; /* INFTIM */ |
struct pollfd *pfd = NULL; |
struct pollfd *pfd = NULL; |
size_t npfd = 0; |
size_t npfd = 0; |
|
|
|
|
signal(SIGINT, (d_flag | D_flag) ? cleanup_handler : SIG_IGN); |
signal(SIGINT, (d_flag | D_flag) ? cleanup_handler : SIG_IGN); |
signal(SIGHUP, cleanup_handler); |
signal(SIGHUP, cleanup_handler); |
signal(SIGTERM, cleanup_handler); |
signal(SIGTERM, cleanup_handler); |
nalloc = 0; |
|
|
|
if (pledge("stdio rpath cpath unix id proc exec", NULL) == -1) |
if (pledge("stdio rpath cpath unix id proc exec", NULL) == -1) |
fatal("%s: pledge: %s", __progname, strerror(errno)); |
fatal("%s: pledge: %s", __progname, strerror(errno)); |