update RAD_REPLY with += in rlm_perl
Bjørn Mork
bjorn at mork.no
Tue Oct 25 14:16:07 CEST 2011
Energ <ponch at ponch.ru> writes:
> how do i update RAD_REPLY correctly with perl if i want to add addtiotional
> Cisco-AVPair in reply?
> lets say user profile has Cisco-AVPair="something1". I can have multiple of
> those by adding to user profile another pair like this
> Cisco-AVPair+="something1". But how to do the same while processing with
> rlm_perl? How to hablde hash update in this situation?
multiple values for the same attribute are represented as an arrayref in
rlm_perl:
$RAD_REPLY{'Cisco-AVPair'} = [ 'value1', 'value2', value3 ];
which equivalent to
Cisco-AVPair := value1,
Cisco-AVPair += value2
Cisco-AVPair += value3
This can become a bit messy if you have to change the number of values
between 1 and a higher number, since you then have to change the type
between a scalar and an arrayref.
Bjørn
More information about the Freeradius-Users
mailing list