On Nov 12, 2017, at 6:16 AM, Richard J Palmer <richard@merula.net> wrote:
(1) if (&Cisco-AVPair =~ /ip:route=([^ ]+) ([^ ]+)/) { (1) ERROR: Failed retrieving values required to evaluate condition
That's because the incoming packet doesn't contain Cisco-AVPair. Again... read the debug output. ALL of it. You'll see the server isn't receiving a Cisco-AVPair attribute from the NAS.
I am reasonably certain there is a issue somewhere with if (&Cisco-AVPair =~ /ip:route=([^ ]+) ([^ ]+)/)
Yes. You can only match a Cisco-AVPair against a regex... if the packet contains Cisco-AVPiar.
Using an online Regex testing tool and using the above as a basis I can see that Cisco-AVPair = \"ip:route=([^ ]+) ([^ ]+)\"
This retrieves the data I need - However that is not accepted by the freeradius config (understandably as it's not quote the same thing).
Really? The format of the configuration files is documented. See "man unlang". There should be *no* surprise that random text isn't accepted by FreeRADIUS. Alan DeKok.