- posn = 0;
- do {
- size = write(fd_out, buf + posn, objsize - posn);
- if (size <= 0) {
- if (!size) {
- fprintf(stderr, "git-ssh-push: write closed");
- } else {
- perror("git-ssh-push: write ");
- }
- return -1;
- }
- posn += size;
- } while (posn < objsize);
- return 0;