multiattribute testing in git 1411859

Franks Andy (RLZ) IT Systems Engineer Andy.Franks at
Wed Aug 6 23:02:23 CEST 2014

Thanks Arran for taking the time to reply in-depth.
I did send a test case over on skype?

-----Original Message-----
From: at
[ at lists.freeradiu] On Behalf Of Arran Cudbard-Bell
Sent: 06 August 2014 18:01
To: FreeRadius users mailing list
Subject: Re: multiattribute testing in git 1411859

On 6 Aug 2014, at 12:37, Franks Andy (RLZ) IT Systems Engineer
<Andy.Franks at> wrote:

> Ah, ok so it's just functionality built into the cache module then..?

It's code in radius_map2vp which is shared by rlm_cache, rlm_ldap and
the unlang update blocks. It's not supported by conditions *yet*.

update request {
	foo += &control:bar[*]

Would copy all instances of control:bar as foo attributes, into the

If foo and bar are different types, there's an attempt made to cast one
to the other, which may fail.

If they're the same time, new instances of foo would be created with all
the values of bar.

10 internet points if you can guess what this does :) update request {
	foo += "%{control:bar[*]}"

> I'll consider foreach then, and do my tests another way perhaps. Means

> a decent portion of unlang being rewritten.
> Did you manage to reproduce the foreach and if statement issue I 
> sketched out on skype at all? If so, I can be sure that foreach will 
> be ok.

No. I don't have the bandwidth currently to work on reproducing issues.
If you can get it down to a test case (look in src/test/keywords for
examples) then i'll have a go at fixing it.

For unlang issues, it's really helpful in general if people can create
test cases for issues, as it means we can add them to the suite to
prevent regressions.

I sit on the LuaJIT list as well, and that's pretty much how their
entire bug reporting/fixing system works :).


Arran Cudbard-Bell <a.cudbardb at> FreeRADIUS development

FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2

More information about the Freeradius-Users mailing list