chiark / gitweb /
Upstream qmail 1.01
[qmail] / slurpclose.c
1 #include "stralloc.h"
2 #include "readwrite.h"
3 #include "slurpclose.h"
4
5 int slurpclose(fd,sa,bufsize)
6 int fd;
7 stralloc *sa;
8 int bufsize;
9 {
10   int r;
11   for (;;) {
12     if (!stralloc_readyplus(sa,bufsize)) { close(fd); return -1; }
13     r = read(fd,sa->s + sa->len,bufsize);
14     if (r <= 0) { close(fd); return r; }
15     sa->len += r;
16   }
17 }