evaluated result is wrong

Alexander Clouter alex at digriz.org.uk
Mon Dec 21 00:36:02 CET 2009


Arran Cudbard-Bell <a.cudbard-bell at sussex.ac.uk> wrote:
> 
>> I have a question regarding this debug log output. I'm a bit confused
>> about this logic operations and the boolean result:
>>
>> Sun Dec 20 15:44:46 2009 : Info: ++? if ("%{control:Tmp-Integer-4}" >=
>> "%{control:Tmp-Integer-5}")
>> Sun Dec 20 15:44:46 2009 : Info:        expand:
>> %{control:Tmp-Integer-4} -> 32933844
>> Sun Dec 20 15:44:46 2009 : Info:        expand:
>> %{control:Tmp-Integer-5} -> 2785017856
>> Sun Dec 20 15:44:46 2009 : Info: ? Evaluating
>> ("%{control:Tmp-Integer-4}" >= "%{control:Tmp-Integer-5}") -> TRUE
>
> Hmm have you tried using direct references to the attributes? i.e.
> if(control:Tmp-Integer-4 >= control:Tmp-Integer-5). The values of the
> attributes will likely be converted to a strings before comparison,
> might be causing the odd result...
> 
I probably would personally be more inclinded to reduce accuracy and 
trim the last three octets of the string to effectively give you 
kilobyte accuracy which probably is close enough for your needs.  
Hopefully not many shift 2TB in the time period you are handling :)

This will probably do you well until Alan gives you 64bit counters; 
obviously wait out for the 64bit counters if you can though.

Cheers

-- 
Alexander Clouter
.sigmonster says: To avoid suffocation, keep away from children.




More information about the Freeradius-Users mailing list