From: Arran Cudbard-Bell Date: Tue, 15 Jan 2013 17:42:57 +0000 (+0000) Subject: Add function for printing lists to request debug log X-Git-Tag: release_3_0_0_beta1~1317 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=02b727863436f1cad15a78a41feec7d4229edb89;p=thirdparty%2Ffreeradius-server.git Add function for printing lists to request debug log --- diff --git a/src/include/radiusd.h b/src/include/radiusd.h index 1b8b2c27945..da77620dafe 100644 --- a/src/include/radiusd.h +++ b/src/include/radiusd.h @@ -530,6 +530,7 @@ int session_zap(REQUEST *request, uint32_t nasaddr, #undef debug_pair void debug_pair(VALUE_PAIR *); void debug_pair_list(VALUE_PAIR *); +void rdebug_pair_list(int, REQUEST *, VALUE_PAIR *); int log_err (char *); /* util.c */ diff --git a/src/main/valuepair.c b/src/main/valuepair.c index 28bb95bc7cc..2a712f9b48d 100644 --- a/src/main/valuepair.c +++ b/src/main/valuepair.c @@ -861,6 +861,25 @@ void debug_pair_list(VALUE_PAIR *vp) fflush(fr_log_fp); } +/** Print a list of valuepairs to the request list. + * + * @param[in] level Debug level (1-4). + * @param[in] request. + * @param[in] vp to print. + */ +void rdebug_pair_list(int level, REQUEST *request, VALUE_PAIR *vp) +{ + char buffer[256]; + if (!vp || !request || !request->radlog) return; + + while (vp) { + vp_prints(buffer, sizeof(buffer), vp); + + request->radlog(L_DBG, level, request, "\t%s", buffer); + vp = vp->next; + } +} + /** Resolve attribute pair_lists_t value to an attribute list. * * The value returned is a pointer to the pointer of the HEAD of the list