> -----Original Message----- > From: > [EMAIL PROTECTED] > eradius.org > [mailto:[EMAIL PROTECTED] > ists.freeradius.org] On Behalf Of Mother > Sent: Sunday, 16 December 2007 06:28 > To: freeradius-users@lists.freeradius.org > Subject: Problem using Freeradius with Oracle > > Hi all, > > My setup is FreeBSD 6.2, with Freeradius 1.1.7 installed > using Ports (I had to hack the configure so it would be built > with Oracle, as there is no option in the Ports make, but I > digress...). > > I have everything working now, but when the accounting stop > message is received, the SQL call causes Oracle to balk. The > call (with non-relevant portions removed) is: > > UPDATE radacct SET ... AcctInputOctets = '0' << 32 | '0', > AcctOutputOctets = '0' << 32 | '0', ... WHERE ... > > Now, Acc[input/output]Octets as I see in oraclesql.conf is > derived like > this: > > AcctInputOctets = '%{%{Acct-Input-Gigawords}:-0}' << 32 | > '%{%{Acct-Input-Octets}:-0}' > > So it seems (AFAIK) that it's attempting to bit-shift the > Gigawords and Octets received from the NAS. >
Oracle doesn't seem to do bit shift. You can multiply by 2^32 instead. AcctInputOctets = '%{%{Acct-Input-Gigawords}:-0}' * 4294967296 + '%{%{Acct-Input-Octets}:-0}' Oracle supports up to 38 digit numbers. Regards Frank Ranner - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html