regular expression error in 3.0.x not present in 3.0.6

Alan DeKok aland at deployingradius.com
Thu Mar 5 18:17:05 CET 2015


On Mar 5, 2015, at 11:49 AM, Aaron Hurt via Freeradius-Devel <freeradius-devel at lists.freeradius.org> wrote:
> I have a policy.d file containing a regular expression that works in 3.0.6 that I’ve tried with two different flavors.
> Both flavors load and work in 3.0.6 but error in the latest 3.0.x branch.

  The v3.0.x branch should be compatible with the 3.0.6 config.

> Flavor1:
> simple_nt_regexp = "^([^\\\\]*)(\\\\(.*))$"
> 
> Flavor2:
> simple_nt_regexp = "^([^\\\\]*)\\\\(.*)$”

  Ugh.  The “endless backslash” problem.  I’d prefer to see the use of “correct_escapes”.

> In 3.0.x from today:
> 
> /opt/local/etc/raddb/policy.d/strip-user-domain[9]: Invalid regular expression:
> /opt/local/etc/raddb/policy.d/strip-user-domain[9]: ^([^\\]*)\\(.*)$
> /opt/local/etc/raddb/policy.d/strip-user-domain[9]: ^ Pattern study failed: unknown or incorrect option bit(s) set

  From google:

https://lists.openinfosecfoundation.org/pipermail/oisf-users/2012-July/001866.html

>> Seen this error before. It turned out I used headers from 8.31, but
>> linked against the distro libpcre.
>>
>> I'm pretty sure you have either a typo in your --with-libpcre-* or you\
>> have multiple libpcre.so's of different versions in your ld path.



> Is there something obvious that I am missing?

  Don’t install multiple versions of the same library.  It’s just a bad idea.

  Alan DeKok.




More information about the Freeradius-Devel mailing list