rem: n = read(cgiPtr->ofd, cgiPtr->buf, sizeof(cgiPtr->buf));
add: do { n = read(cgiPtr->ofd, cgiPtr->buf, sizeof(cgiPtr->buf)); } while (n < 0 && errno == EINTR);
context: CgiRead(Cgi *cgiPtr){    int n;        cgiPtr->ptr = cgiPtr->buf;    n = read(cgiPtr->ofd, cgiPtr->buf, sizeof(cgiPtr->buf));    if (n > 0) {	cgiPtr->cnt = n;    } else if (n < 0) {	Ns_Log(Error, "nscgi: pipe read() from %s failed: %s",	       cgiPtr->exec, strerror(errno));    }    return n;}