expiration doesn't work in freebsd + mysql (sparc64 only)

Richard Cotrina rcc at speedy.net.pe
Thu May 17 18:55:23 CEST 2007


Hello :

It seems that something goes wrong in the FreeBSD/sparc64 plattform, because
the same configuration also works in FreeBSD/i386.

The problem appears when rlm_sqlcounter is enabled.

Here is the normal debug output for i386 (authentication gets an
access-accept) :

#####################################
radius_xlat:  'rcotrina at test.com'
rlm_sql (sql): sql_set_user escaped user --> 'rcotrina at test.com'
radius_xlat:  'SELECT id, UserName, Attribute, Value, op           FROM
radcheck           WHERE Username = 'rcotrina at test.com'           ORDER BY
id'
rlm_sql (sql): Reserving sql socket id: 7
radius_xlat:  'SELECT
radgroupcheck.id,radgroupcheck.GroupName,radgroupcheck.Attribute,radgroupche
ck.Value,radgroupcheck.op  FROM radgroupcheck,usergroup WHERE
usergroup.Username = 'rcotrina at test.com' AND usergroup.GroupName =
radgroupcheck.GroupName ORDER BY radgroupcheck.id'
radius_xlat:  'SELECT id, UserName, Attribute, Value, op           FROM
radreply           WHERE Username = 'rcotrina at test.com'           ORDER BY
id'
radius_xlat:  'SELECT
radgroupreply.id,radgroupreply.GroupName,radgroupreply.Attribute,radgrouprep
ly.Value,radgroupreply.op  FROM radgroupreply,usergroup WHERE
usergroup.Username = 'rcotrina at test.com' AND usergroup.GroupName =
radgroupreply.GroupName ORDER BY radgroupreply.id'
rlm_sql (sql): Released sql socket id: 7
  modcall[authorize]: module "sql" returns ok for request 1
rlm_sqlcounter: Entering module authorize code
sqlcounter_expand:  'SELECT SUM(AcctSessionTime -
GREATEST((1179378000 - UNIX_TIMESTAMP(AcctStartTime)), 0))
[...]
####################################


In the other hand, this is the debug output for freeBSD/sparc64, where the
authentication gets an access-reject

***************************************************
radius_xlat:  'rcotrina at test.com'
rlm_sql (sql): sql_set_user escaped user --> 'rcotrina at test.com'
radius_xlat:  'SELECT id, UserName, Attribute, Value, op           FROM
radcheck           WHERE Username = 'rcotrina at test.com'           ORDER BY
id'
rlm_sql (sql): Reserving sql socket id: 8
radius_xlat:  'SELECT
radgroupcheck.id,radgroupcheck.GroupName,radgroupcheck.Attribute,radgroupche
ck.Value,radgroupcheck.op  FROM radgroupcheck,usergroup WHERE
usergroup.Username = 'rcotrina at test.com' AND usergroup.GroupName =
radgroupcheck.GroupName ORDER BY radgroupcheck.id'
radius_xlat:  'SELECT id, UserName, Attribute, Value, op           FROM
radreply           WHERE Username = 'rcotrina at test.com'           ORDER BY
id'
radius_xlat:  'SELECT
radgroupreply.id,radgroupreply.GroupName,radgroupreply.Attribute,radgrouprep
ly.Value,radgroupreply.op  FROM radgroupreply,usergroup WHERE
usergroup.Username = 'rcotrina at test.com' AND usergroup.GroupName =
radgroupreply.GroupName ORDER BY radgroupreply.id'
rlm_sql (sql): Released sql socket id: 8
Invalid operator for item Expiration: reverting to '=='
Invalid operator for item Expiration: reverting to '=='
Invalid operator for item Expiration: reverting to '=='
Invalid operator for item Expiration: reverting to '=='
Invalid operator for item Expiration: reverting to '=='
Invalid operator for item Expiration: reverting to '=='
Invalid operator for item Expiration: reverting to '=='
rlm_sql (sql): No matching entry in the database for request from user
[rcotrina at test.com]
  modcall[authorize]: module "sql" returns notfound for request 1
rlm_sqlcounter: Entering module authorize code
rlm_sqlcounter: Could not find Check item value pair
[...]
*****************************************************


In both cases, the radiusd.conf and sql.conf are identical, as well as the
database. Freeradius version 1.1.6 from ports.

Is there any function or module that could depend on the architecture type ?
Or maybe a special flag is needed during compilation for 64bits plattforms ?

Regards

Richard Cotrina

----- Original Message -----
From: "Richard Cotrina" <rcc at speedy.net.pe>
To: "FreeRadius users mailing list" <freeradius-users at lists.freeradius.org>
Sent: Thursday, May 03, 2007 2:46 PM
Subject: expiration doesn't work in freebsd + mysql


> Hello :
>
> I'm getting a weard error using expiration with mysql backend in FreeBSD.
> The same configuration works fine in linux (centos) but not in FreeBSD 6.1
>
> In Linux, all works fine (freeradius 1.1.6 + mysql 5.0), I've tried both
> "==" and ":=" operators and everything goes well.
>
> In FreeBSD 6.1 (freeradius 1.1.6 + mysql 4.1) everything works fine until
I
> enable Expiration in the user's attributes. Despite the fact that I use
the
> same configuration, I got the following message, whatever the operator be
:
>
>
****************************************************************************
> ************************
> Invalid operator for item Expiration: reverting to '=='
> rlm_sql (sql): No matching entry in the database for request from user
> [test at test.com]
>
****************************************************************************
> ************************
>
> Has anyone had a similar experience ?
>
> Kind Regards
>
> Richard Cotrina




More information about the Freeradius-Users mailing list