From: Alan T. DeKok Date: Mon, 17 Oct 2011 11:50:45 +0000 (+0200) Subject: Make vp_print_name return size_t X-Git-Tag: release_3_0_0_beta0~589 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dd76bbefa7b9e410060375f5169d2210f7d4533f;p=thirdparty%2Ffreeradius-server.git Make vp_print_name return size_t which makes more sense --- diff --git a/src/include/libradius.h b/src/include/libradius.h index b22544d18f1..fa438a0b0a0 100644 --- a/src/include/libradius.h +++ b/src/include/libradius.h @@ -256,7 +256,7 @@ size_t fr_print_string(const char *in, size_t inlen, char *out, size_t outlen); int vp_prints_value(char *out, size_t outlen, const VALUE_PAIR *vp, int delimitst); -const char *vp_print_name(char *buffer, size_t bufsize, +size_t vp_print_name(char *buffer, size_t bufsize, unsigned int attr, unsigned int vendor); int vp_prints(char *out, size_t outlen, const VALUE_PAIR *vp); void vp_print(FILE *, const VALUE_PAIR *); diff --git a/src/lib/print.c b/src/lib/print.c index 63e54e43858..20985282fea 100644 --- a/src/lib/print.c +++ b/src/lib/print.c @@ -439,14 +439,14 @@ static size_t vp_print_attr_oid(char *buffer, size_t size, unsigned int attr, return outlen; } -const char *vp_print_name(char *buffer, size_t bufsize, - unsigned int attr, unsigned int vendor) +size_t vp_print_name(char *buffer, size_t bufsize, + unsigned int attr, unsigned int vendor) { char *p = buffer; int dv_type = 1; size_t len = 0; - if (!buffer) return NULL; + if (!buffer) return 0; len = snprintf(p, bufsize, "Attr-"); p += len; @@ -473,9 +473,9 @@ const char *vp_print_name(char *buffer, size_t bufsize, bufsize -= len; } - vp_print_attr_oid(p, bufsize , attr, dv_type); + p += vp_print_attr_oid(p, bufsize , attr, dv_type); - return buffer; + return p - buffer; } @@ -486,21 +486,10 @@ int vp_prints(char *out, size_t outlen, const VALUE_PAIR *vp) { size_t len; const char *token = NULL; - const char *name; - char namebuf[128]; out[0] = 0; if (!vp) return 0; - name = vp->name; - - if (!name || !*name) { - if (!vp_print_name(namebuf, sizeof(namebuf), vp->attribute, vp->attribute)) { - return 0; - } - name = namebuf; - } - if ((vp->operator > T_OP_INVALID) && (vp->operator < T_TOKEN_LAST)) { token = vp_tokens[vp->operator]; @@ -510,13 +499,13 @@ int vp_prints(char *out, size_t outlen, const VALUE_PAIR *vp) if( vp->flags.has_tag ) { snprintf(out, outlen, "%s:%d %s ", - name, vp->flags.tag, token); + vp->name, vp->flags.tag, token); len = strlen(out); vp_prints_value(out + len, outlen - len, vp, 1); } else { - snprintf(out, outlen, "%s %s ", name, token); + snprintf(out, outlen, "%s %s ", vp->name, token); len = strlen(out); vp_prints_value(out + len, outlen - len, vp, 1);