FreeRADIUS 2.X.X small functionality extensions

Kostas Zorbadelos kzorba at
Wed Jun 4 15:39:09 CEST 2014

Greetings to all,

in our company (a big commercial telecom/ISP) we run a project to
completely migrate our AAA infrastructure to FreeRADIUS (we use
FreeRADIUS in parts of it for many years).
One of our requirements in authentication/authorization is DSLAM port
checking. The port info comes in NAS-Port-Id in our case and can be
extracted in a normalized form with a regular expression. The problem
was that FreeRADIUS provided in variables only the first 8 matching
groups in %{0}..%{8}, whereas in our setup we needed up until %{12} to
get the port information.
So I developed a relevant patch which I communicated through GitHub as a
pull request (following procedure described in
The patch is against 2.X.X (tested with 2.2.5) and provides two

- make available %{0}..%{16} in regex matches
- make available a new xlat function tonumber() to translate strings as

In our case the port info coming from the regular expression is a string
of the form 15243:1/1/02/04 and we want to transform it to

I would really like to see the functionality included upstream and
hopefully it can benefit others as well. Let me know what you think (and
bear with me since it's my first patch to FreeRADIUS).


Kostas Zorbadelos		
() - against HTML e-mail & proprietary attachments

More information about the Freeradius-Users mailing list