Best Practices - maximum NAS entries in clients.conf

Phil Mayers p.mayers at imperial.ac.uk
Tue Sep 13 11:57:51 CEST 2011


On 13/09/11 08:59, Fajar A. Nugraha wrote:

>
> That's what we currently do (for another purpose, not for dynamic
> client). However:
> - I lost load-balancing feature that comes with redundant-load-balance
> - imagine having to create 8 if-elsif block to properly catch error
> when working with 8 sql nodes, and write the same sql query 8 times in
> the configuration file. Works, but kinda messy.
>
> With current sql module (that only reads nas list from sql during
> startup/HUP) I can use one sql/mysql/*.conf to specify the query, and
> have each sql instance $INCLUDE it. If we can do similar thing with
> "%{sql:" expansion (e.g. store the query in some temporary internal
> variable/attribute) it'd be reduce the measiness greatly, but I
> haven't found out how to do it yet.

You can't. It's not currently possible, and would require changes to the 
source code.

Basically, the internal functions that handle xlat in FreeRADIUS do not 
have a way to signal error status, e.g. "notfound", "updated" etc. 
because they have a single integer return value that is the "length" of 
the xlat once done. 0 might mean "failed" or it might mean "empty string".

Changing this would involve a lot of (very small) source code changes. 
I'm sure a patch would be accepted if you would care to write one :o)



More information about the Freeradius-Users mailing list