Dear Matthew & Alan DeKok.<div>Thank you ver very very much for your assistanc throughout. This worked !!!!!</div><div><br></div><div>I am able to do it with help of your both. You guys are great. Honestly, it was not possible for me without you help. </div>
<div><br></div><div>I will write the solution as one document to help others. Solution can manage & control up to 2TB per voucher / username.</div><div><br></div><div>Once again, my special thanks to Alan D. & Matthew <br>
Regards</div><div>RM--</div><div><br>On Thursday, October 24, 2013, Matthew Newton  wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, Oct 24, 2013 at 11:35:30AM +0000, Russell Mike wrote:<br>

> >   I can't make it any clearer than that.<br>
><br>
> thank you very very much, it is great explanation. Your response made<br>
> many things very clearer. But did not work for me still. Perhaps my formula<br>
> is wrong. Kindly help one more step further. Honestly, i have tried very<br>
> hard, working on it for some weeks now without results. i.e. i want to set<br>
> 6GB limit.<br>
><br>
> total bytes in 6GB = 805306368<br>
> total bytes in 4GB = 536870912<br>
<br>
Not sure where you got these from.<br>
<br>
6GB = 6 * 1024 * 1024 * 1024 = 4 * 1024^3 = 6442450944<br>
<br>
6GB in binary is<br>
<br>
0000000000000000000000000000000110000000000000000000000000000000<br>
<br>
3210987654321098765432109876543210987654321098765432109876543210<br>
   6         5         4         3         2         1         0<br>
<br>
So the lower 32 bits are:<br>
<br>
10000000000000000000000000000000<br>
<br>
and the upper 32 bits are:<br>
<br>
00000000000000000000000000000001<br>
<br>
The lower bits can be found by bitwise AND with (2^32)-1 (i.e. 32<br>
ones):<br>
<br>
$ python<br>
>>> 6*(1024**3) & ((2**32)-1)<br>
2147483648<br>
<br>
The upper 32 bits by shifting right by 32 bits:<br>
<br>
>>> 6*(1024**3) >> 32<br>
1<br>
<br>
<br>
So you want<br>
<br>
> i put 536870912 in ChilliSpot-Max-Input-Octets<br>
<br>
this should be 2147483648;<br>
<br>
> i put 268435456 in ChilliSpot-Max-Input-Gigawords<br>
<br>
This should be 1.<br>
<br>
To confirm the numbers are correct, left-shift the gigawords by 32<br>
bits, then add the octets. Should come back to the original value:<br>
<br>
>>> (1<<32) + 2147483648<br>
6442450944<br>
>>> 6*(1024**3)<br>
6442450944<br>
<br>
Matthew<br>
<br>
<br>
--<br>
Matthew Newton, Ph.D. <<a href="javascript:;" onclick="_e(event, 'cvml', 'mcn4@le.ac.uk')">mcn4@le.ac.uk</a>><br>
<br>
Systems Specialist, Infrastructure Services,<br>
I.T. Services, University of Leicester, Leicester LE1 7RH, United Kingdom<br>
<br>
For IT help contact helpdesk extn. 2253, <<a href="javascript:;" onclick="_e(event, 'cvml', 'ithelp@le.ac.uk')">ithelp@le.ac.uk</a>><br>
-<br>
List info/subscribe/unsubscribe? See <a href="http://www.freeradius.org/list/users.html" target="_blank">http://www.freeradius.org/list/users.html</a><br>
</blockquote></div>