Version 3.0.3 has been released
Arran Cudbard-Bell
a.cudbardb at freeradius.org
Wed May 14 10:25:51 CEST 2014
On 14 May 2014, at 09:03, peter.geiser at id.unibe.ch wrote:
> The regex case insensitiv problem is solved now but another strange
> behavior with FR 3.0.3-git:
>
> Policy:
>
> set_eduroam_vlan {
>
> # add some debug values
> update {
> request:Cisco-AVpair += "debug1=123"
> request:Cisco-AVpair += "debug2=abc"
> }
>
> foreach Cisco-Avpair {
> if("%{Foreach-Variable-0}" =~ /ssid=eduroam/i) {
> update {
> reply:Tunnel-Type := 'VLAN'
> reply:Tunnel-Medium-Type := 'IEEE-802'
> }
> switch &reply:Class {
> case 'staff' {
> update {
> reply:Filter-Id := 'staff'
> reply:Tunnel-Private-Group-Id := '1'
> }
> }
> case 'student' {
> update {
> reply:Filter-Id := 'student'
> reply:Tunnel-Private-Group-Id := '2'
> }
> }
> case 'phbern' {
> noop
> }
> case {
> update {
> reply:Filter-Id := 'external'
> reply:Tunnel-Private-Group-Id := '3'
> }
> }
> }
> break
> }
> }
> updated
> }
>
> Debug output:
>
> (11) set_eduroam_vlan set_eduroam_vlan {
> (11) update {
> (11) request:Cisco-AVpair += 'debug1=123'
> (11) request:Cisco-AVpair += 'debug2=abc'
> (11) } # update = noop
> (11) foreach Cisco-Avpair
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i)
> (11) EXPAND %{Foreach-Variable-0}
> (11) --> ssid=EDUROAM
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i) -> TRUE
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i) {
> (11) update {
> (11) reply:Tunnel-Type := VLAN
> (11) reply:Tunnel-Medium-Type := IEEE-802
> (11) } # update = noop
> (11) switch &reply:Class {
> (11) case staff {
> (11) update {
> (11) reply:Filter-Id := 'staff'
> (11) reply:Tunnel-Private-Group-Id := '1'
> (11) } # update = noop
> (11) } # case staff = noop
> (11) } # switch &reply:Class = noop
> (11) # break Foreach-Variable-0
> (11) } # if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i) = noop
> (11) # unwind to enclosing foreach
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i)
> (11) EXPAND %{Foreach-Variable-0}
> (11) --> debug1=123
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i) -> FALSE
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i)
> (11) EXPAND %{Foreach-Variable-0}
> (11) --> debug2=abc
> (11) if ("%{Foreach-Variable-0}" =~ /ssid=eduroam/i) -> FALSE
> Aborted
>
>
> :O why does the break statment not work at the current iteration? And why
> crashes the freeradius daemon here?
> Same policy works with FR 3.0.2Š
Cray.
Can you post a backtrace for the abort?
-Arran
Arran Cudbard-Bell <a.cudbardb at freeradius.org>
FreeRADIUS Development Team
FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 881 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freeradius.org/pipermail/freeradius-users/attachments/20140514/9e34999c/attachment.pgp>
More information about the Freeradius-Users
mailing list