Whamcloud - gitweb
LU-10937 mgc: restore mgc binding for sptlrpc
[fs/lustre-release.git] / lustre / utils / gss / cacheio.c
index 3b39316..bbb03d7 100644 (file)
@@ -58,7 +58,7 @@
 #include <errno.h>
 #include "err_util.h"
 
-void qword_add(char **bpp, int *lp, char *str)
+void qword_add(char **bpp, int *lp, const char *str)
 {
        char *bp = *bpp;
        int len = *lp;
@@ -132,6 +132,17 @@ void qword_addint(char **bpp, int *lp, int n)
        *lp -= len;
 }
 
+void qword_adduint(char **bpp, int *lp, unsigned int n)
+{
+       int len;
+
+       len = snprintf(*bpp, *lp, "%u ", n);
+       if (len > *lp)
+               len = *lp;
+       *bpp += len;
+       *lp -= len;
+}
+
 void qword_addeol(char **bpp, int *lp)
 {
        if (*lp <= 0)
@@ -143,28 +154,36 @@ void qword_addeol(char **bpp, int *lp)
 
 static char qword_buf[8192];
 static char tmp_buf[8192];
-void qword_print(FILE *f, char *str)
+int qword_print(FILE *f, const char *str)
 {
        char *bp = qword_buf;
        int len = sizeof(qword_buf);
+       size_t sret;
+
        qword_add(&bp, &len, str);
-       fwrite(qword_buf, bp-qword_buf, 1, f);
+       sret = fwrite(qword_buf, bp-qword_buf, 1, f);
        /* XXX: */
        memcpy(tmp_buf, qword_buf, bp-qword_buf);
        tmp_buf[bp-qword_buf] = '\0';
        printerr(2, "%s", tmp_buf);
+
+       return sret != 1;
 }
 
-void qword_printhex(FILE *f, char *str, int slen)
+int qword_printhex(FILE *f, char *str, int slen)
 {
        char *bp = qword_buf;
        int len = sizeof(qword_buf);
+       size_t sret;
+
        qword_addhex(&bp, &len, str, slen);
-       fwrite(qword_buf, bp-qword_buf, 1, f);
+       sret = fwrite(qword_buf, bp-qword_buf, 1, f);
        /* XXX: */
        memcpy(tmp_buf, qword_buf, bp-qword_buf);
        tmp_buf[bp-qword_buf] = '\0';
        printerr(2, "%s", tmp_buf);
+
+       return sret != 1;
 }
 
 void qword_printint(FILE *f, int num)
@@ -173,11 +192,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;
 }