length of value_pair value is only 127

Hagen Muench hagen at webtronaut.de
Wed Jul 16 15:07:36 CEST 2014


Hello,

I have to process a vendor specific attribute from cisco, i.e. the
Cisco-SSG-Account-Info attribute.

---snip---
#define PW_SSG_ACCOUNT_INFO 250
#define CISCO2ATTR(x) ((9 << 16) | (x))
...
vp = pairfind(request->packet->vps, CISCO2ATTR(PW_SSG_ACCOUNT_INFO));
if (!vp) {
   radlog(L_INFO, "Value pair not found!");
}
else{
   radlog(L_INFO, "%s, %i", vp->vp_strvalue, strlen(vp->vp_strvalue));
}
...
---snip---
If I send an authentication request the attribute is found. The problem is
that the vp->vp_strvalue is cut after 128 chars and
strlen(vp->vp_strvalue)) is 127. Though the length of vp_strvalue is
defined in libradius.h by MAX_STRING_LEN (0-253 octets) according to RFC.

I have sent the request by the NTRadPing test utility.

Is it a known issue? Thank you for help.
-
Hagen



More information about the Freeradius-Devel mailing list