version 1.6, 1998/11/18 16:47:01 |
version 1.7, 2001/09/04 23:35:59 |
|
|
struct iovec localiov[6]; |
struct iovec localiov[6]; |
int forked = 0; |
int forked = 0; |
struct stat st; |
struct stat st; |
|
sigset_t mask; |
|
|
if (iovcnt > sizeof(localiov) / sizeof(localiov[0])) |
if (iovcnt > sizeof(localiov) / sizeof(localiov[0])) |
return ("too many iov's (change code in wall/ttymsg.c)"); |
return ("too many iov's (change code in wall/ttymsg.c)"); |
|
|
/* wait at most tmout seconds */ |
/* wait at most tmout seconds */ |
(void) signal(SIGALRM, SIG_DFL); |
(void) signal(SIGALRM, SIG_DFL); |
(void) signal(SIGTERM, SIG_DFL); /* XXX */ |
(void) signal(SIGTERM, SIG_DFL); /* XXX */ |
(void) sigsetmask(0); |
(void) sigemptyset(&mask); |
|
(void) sigprocmask(SIG_SETMASK, &mask, NULL); |
(void) alarm((u_int)tmout); |
(void) alarm((u_int)tmout); |
(void) fcntl(fd, O_NONBLOCK, &off); |
(void) fcntl(fd, O_NONBLOCK, &off); |
continue; |
continue; |