Hello,

After much trying, I still cannot get sqlcounter to work. 

##FROM RADIUSD.CONF
        sqlcounter monthlycounter {
                counter-name = Monthly-Session-Time
                check-name = Max-Monthly-Session
                sqlmod-inst = sql
                key = User-Name
                reset = 3m
(...comments)

query = "SELECT SUM(AcctSessionTime - GREATEST((%b - UNIX_TIMESTAMP(AcctStartTime)), 
0)) FROM radacct WHERE UserName='%{%k}' AND 
UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime > '%b'"

(...blah)
authorize {
        preprocess
        suffix
        sql
        monthlycounter
}               
### Finish of relevant stuff from radiusd.conf


Now, some interesting stuff from debug output:

rlm_sql: Driver rlm_sql_mysql loaded and linked
rlm_sql: Attempting to connect to root@localhost:/radius
rlm_sql:  Connected new DB handle, #0
rlm_sql:  Connected new DB handle, #1
rlm_sql:  Connected new DB handle, #2
rlm_sql:  Connected new DB handle, #3
rlm_sql:  Connected new DB handle, #4
Module: Instantiated sql (sql) 
Module: Loaded SQL Counter 
 sqlcounter: counter-name = "Monthly-Session-Time"
 sqlcounter: check-name = "Max-Monthly-Session"
 sqlcounter: key = "User-Name"
 sqlcounter: sqlmod-inst = "sql"
 sqlcounter: query = "SELECT SUM(AcctSessionTime - GREATEST((%b - 
UNIX_TIMESTAMP(AcctStartTime)), 0)) FROM radacct WHERE UserName='%
{%k}' AND UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime > '%b'"
 sqlcounter: reset = "3m"
rlm_sqlcounter: Counter attribute Monthly-Session-Time is number 1060
rlm_sqlcounter: Check attribute Max-Monthly-Session is number 1061
rlm_sqlcounter: num=3, last=m
rlm_sqlcounter: Current Time: 1025127858, Next reset 1030849200
rlm_sqlcounter: num=3, last=m
rlm_sqlcounter: Current Time: 1025127858, Prev reset 1017630000
Module: Instantiated sqlcounter (monthlycounter) 

########
Now some output from mysql:
mysql> select * from radcheck where username='surak';
+-----+----------+---------------------+------------------------------------+------+
| id  | UserName | Attribute           | Value                              | op   |
+-----+----------+---------------------+------------------------------------+------+
| 164 | surak    | Crypt-Password      | ***************************** | :=   |
| 850 | surak    | Max-Monthly-Session | 131321321321                        | :=    |
+-----+----------+---------------------+------------------------------------+------+
##########

And now, again, from radius debug output:

###############
sql_set_user:  escaped user --> 'surak'
radius_xlat:  'SELECT id,UserName,Attribute,Value FROM radcheck WHERE Username = 
'surak' ORDER BY id'
rlm_sql: Reserving sql socket id: 4
radius_xlat:  'SELECT 
radgroupcheck.id,radgroupcheck.GroupName,radgroupcheck.Attribute,radgroupcheck.Value 
FROM radgroupcheck,usergroup 
WHERE usergroup.Username = 'surak' AND usergroup.GroupName = radgroupcheck.GroupName 
ORDER BY radgroupcheck.id'
radius_xlat:  'SELECT id,UserName,Attribute,Value FROM radreply WHERE Username = 
'surak' ORDER BY id'
radius_xlat:  'SELECT 
radgroupreply.id,radgroupreply.GroupName,radgroupreply.Attribute,radgroupreply.Value 
FROM radgroupreply,usergroup WHERE 
usergroup.Username = 'surak' AND usergroup.GroupName = radgroupreply.GroupName ORDER 
BY radgroupreply.id'
rlm_sql: Pairs do not match [surak]
rlm_sql: Released sql socket id: 4
  modcall[authorize]: module "sql" returns notfound
rlm_sqlcounter: Entering module authorize code
rlm_sqlcounter: Could not find Check item value pair
  modcall[authorize]: module "monthlycounter" returns noop
modcall: group authorize returns ok
auth: No Auth-Type configuration for the request, rejecting the user
auth: Failed to validate the user.
Login incorrect: [surak/***********] (from client suporte port 0 cli 3112345678)
###############

Am I doing something wrong? Can someone help me?
(Oh yes, using 20020610 snapshot)



- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to