if (selrv == -1) {
if (errno == EINTR || errno == EAGAIN)
continue;
return -1;
} else if (selrv == 0 && cnt >= 5) {
return 0;
} else
(void)fflush(stdout);
(void)fflush(stderr);
if ((fd != -1 && pipe(fdin) == -1) || pipe(fdout) == -1) {
if ((fd == -1 && pipe(fdin) == -1) || pipe(fdout) == -1) {
file_error(ms, errno, "cannot create pipe");
return NODATA;
}