X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=utils%2Fgssd%2Fcacheio.c;h=f2f2960ca3491685d0285a60be457ed52b042ccc;hb=b6b8309bf93ad1c03cf1e9f2ec8634ea2542c289;hp=07658e977a16685be7375e0a6f5ba9fbfb55da74;hpb=ee664fd246d77010af13fb557407c612752a5ea8;p=nfs-utils.git diff --git a/utils/gssd/cacheio.c b/utils/gssd/cacheio.c index 07658e9..f2f2960 100644 --- a/utils/gssd/cacheio.c +++ b/utils/gssd/cacheio.c @@ -55,6 +55,7 @@ #include #include #include +#include #include "err_util.h" void qword_add(char **bpp, int *lp, char *str) @@ -172,11 +173,13 @@ void qword_printint(FILE *f, int num) printerr(2, "%d ", num); } -void qword_eol(FILE *f) +int qword_eol(FILE *f) { + int err; fprintf(f,"\n"); - fflush(f); + err = fflush(f); printerr(2, "\n"); + return err; } @@ -264,7 +267,8 @@ int readline(int fd, char **buf, int *lenp) } len = read(fd, *buf, *lenp); if (len <= 0) { - printerr(2, "read error in readline: %d\n", len); + printerr(0, "readline: read error: len %d errno %d (%s)\n", + len, errno, strerror(errno)); return 0; } while ((*buf)[len-1] != '\n') { @@ -280,12 +284,14 @@ int readline(int fd, char **buf, int *lenp) *buf = new; nl = read(fd, *buf +len, *lenp - len); if (nl <= 0 ) { - printerr(2, "read error in readline: %d\n", nl); + printerr(0, "readline: read error: len %d " + "errno %d (%s)\n", nl, errno, strerror(errno)); return 0; } len += nl; } (*buf)[len-1] = 0; - printerr(1, "read line with %d characters:\n%s\n", *lenp, *buf); + printerr(3, "readline: read %d chars into buffer of size %d:\n%s\n", + len, *lenp, *buf); return 1; }