Hi there, I'm using rlm_perl to add custom reply attributes, but there's a problem when I want to return multiple instances of the same attribute, eg.: Cisco-AVPair=lcp:interface-config=service-policy output RATE-512 Cisco-AVPair=lcp:interface-config=service-policy input RATE-128 rlm_perl supports this (it looks out for arrayrefs) but rlmperl_call() calls pairmove() to put the attributes into the reply: if ((get_hv_content(rad_reply_hv, &vp)) > 0 ) { pairmove(&request->reply->vps, &vp); pairfree(&vp); } and pairmove() will "move attributes from one list to the other if not already present". Unfortunately, this means that only the first Cisco-AVPair ends up getting moved. I've attached a patch which makes pairmove() move all vendor-specific attributes. It works for me. The patch says 1.1.1, but it applies to 1.1.2 as well (untested, but I guess it should work -- lib/valuepair.c and rlm_perl.c look similar enough). Thanks, -- Geoffrey D. Bennett, RHCE, RHCX mailto:g@netcraft.com.au Senior Systems Engineer sip:g@netcraft.com.au NetCraft Australia Pty Ltd http://www.netcraft.com.au/geoffrey/