From 0048209530439075a82ccf878f0e73a21d06b0df Mon Sep 17 00:00:00 2001 From: aland Date: Fri, 20 Apr 2007 14:08:44 +0000 Subject: [PATCH] Can't remove lvalue completely until we've audited the code for all locations that assume they can write data to vp_strvalue of an integer/date/ipaddr type --- src/include/libradius.h | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/include/libradius.h b/src/include/libradius.h index 9707fdd..6f6a8a0 100644 --- a/src/include/libradius.h +++ b/src/include/libradius.h @@ -153,18 +153,30 @@ typedef struct value_pair { LRAD_TOKEN operator; ATTR_FLAGS flags; struct value_pair *next; + uint32_t lvalue; VALUE_PAIR_DATA data; } VALUE_PAIR; #define vp_strvalue data.strvalue #define vp_octets data.octets -#define vp_ipaddr data.ipaddr.s_addr #define vp_ipv6addr data.ipv6addr -#define vp_date data.date -#define vp_integer data.integer #define vp_ifid data.ifid #define vp_ipv6prefix data.ipv6prefix #define vp_filter data.filter +#if 0 +#define vp_ipaddr data.ipaddr.s_addr +#define vp_date data.date +#define vp_integer data.integer +#else +/* + * These are left as lvalue until we audit the source for code + * that prints to vp_strvalue for integer/ipaddr/date types. + */ +#define vp_ipaddr lvalue +#define vp_date lvalue +#define vp_integer lvalue +#endif + typedef struct lrad_ipaddr_t { int af; /* address family */ -- 2.1.4