Recursive modules?

Brian Candler B.Candler at pobox.com
Fri Nov 9 12:51:08 CET 2012


I was wondering if an unlang module in 2.2.x could call itself recursively.

For example, I have a reply list with potentially large number of
Framed-Route attributes and I want to replace each one with something else. 
Could I do the following?

    rewriteFramedRoutes {
        if ("%{reply:Framed-Route}") {
            update reply {
                Cisco-AVPair += "ip:route=...etc..."
                Framed-Route -= "%{reply:Framed-Route}"
            }
            rewriteFramedRoutes
        }
    }

Unfortunately a quick test suggests that the module can't find itself.

    /etc/freeradius/policy.conf[310]: Failed to find "rewriteFramedRoutes" in the "modules" section.

Does this mean that module can only invoke other modules which have been
previously declared?

Regards,

Brian.


More information about the Freeradius-Users mailing list