checking an atribute in multiple entries of default/outer tunnel
Dears, If I have an outer tunnel like in freeradius 2.2.2 like the following, why should Stripped-User-Name be known in the following interactions that visit the outer tunnel, and the whole if block is executed each time? I think it was supposed to have Stripped-User-Name set on the first entry, and then have it available to the next interactions. Regards, Rui Ribeiro authorize { auth_log if (!(Stripped-User-Name)) { if (!(User-Name =~ /^([^@]*)@(.+)$/)) { update reply { Reply-Message := "malformed username" } reject } else { update request { Stripped-User-Name := "%{1}" Realm := "%{2}" } if (Realm == "MyDomain") { update control { Proxy-To-Realm := LOCAL } } else { update control { Proxy-To-Realm := TO_EDUROAM } } } } eap { ok = return } }
Hi, that bit of code really wont work as stripped-user-name is the result of modules not being called...therefore you dont have a stripped user-name available...which means that bit of unlang is being called. my recommendations? use the FreeRADIUS policy.conf system rather than slapping a load of unlang checks/filters into various if statements eg check policy.conf and see that you can simply call 'filter_username' (you'll want to comment out that initial 'tolower' rule - thats not applicable in eduroam systems. alan
participants (2)
-
A.L.M.Buxey@lboro.ac.uk -
Rui Ribeiro