New parsing of "unlang" conditions.

Alan DeKok aland at deployingradius.com
Thu Apr 11 19:48:17 CEST 2013


  I've pushed a change to the git "master" branch.  It does more
in-deptg parsing of conditions in "unlang", when the server starts.

./raddb//sites-enabled/default[214]: Parse error in condition
ERROR: 	  if (foo =~ "fpp") {
ERROR:               ^Expected regex '/'

  Or:

ERROR: 	  if (foo =~ /fpp/ X) {
ERROR:                     ^Unexpected text

  etc.  This works for normal conditions, too, and not just regexes.

  The next step is to integrate the xlat parser with the conditional
parser.  This will allow the server to produce *very* descriptive erros
when it starts.

  i.e.

ERROR: 	  if (foo == "%{User-Foo}") {
ERROR:                  ^Unknown attribute


  There are some caveats, of course.  But it should work.

  As always, please check it out.  I've done a number of tests, but
there's always the possibility that something was missed.

  Alan DeKok.



More information about the Freeradius-Devel mailing list