1.1.7 sqlippool %{SQL-User-Name}

Hugh Messenger hugh at alaweb.com
Tue Jul 17 21:12:03 CEST 2007


Peter Nixon said:
> Good eyes. Hopefully it should work now.

Erm ... nope ...

[root at PMX66 radiusd]# pwd
/usr/local/src/freeradius/radiusd 
[root at PMX66 radiusd]# cvs update
[blah]
[root at PMX66 radiusd]# ls -l src/modules/rlm_sqlippool/rlm_sqlippool.c
-rw-r--r--  1 root root 25416 Jul 17 13:53 
[root at PMX66 radiusd]# make
[blah]
[root at PMX66 radiusd]# make install
[blah]
[root at PMX66 radiusd]# ls -l `which radiusd`
-rwxr-xr-x  1 root root 346903 Jul 17 13:54 /usr/local/sbin/radiusd
[root at PMX66 radiusd]# radiusd -X
[mucho blah]
Ready to process requests.
rad_recv: Access-Request packet from host x.x.x.x:2829, id=50, length=93
        User-Name = "radiustest"
        User-Password = "test123"
        NAS-Port = 123456
        NAS-IP-Address = x.x.x.x
        Calling-Station-Id = "00:60:B3:45:6A:98"
        Called-Station-Id = "rht900_124"
  Processing the authorize section of radiusd.conf
modcall: entering group post-auth for request 0
Value Of the Pool-Name is [rht900_124] and its [10] Chars
rlm_sql (sql): Reserving sql socket id: 2
sqlippool_expand: 'BEGIN'
radius_xlat:  'BEGIN'
sqlippool_expand: 'UPDATE radippool   SET NASIPAddress = '', pool_key = 0,
CallingStationId = '',   expiry_time = NOW() - INTERVAL 1 SECOND   WHERE
pool_key = '%{Calling-Station-Id}'   AND NASIPAddress = '%{NAS-IP-Address}''
radius_xlat:  'UPDATE radippool   SET NASIPAddress = '', pool_key = 0,
CallingStationId = '',   expiry_time = NOW() - INTERVAL 1 SECOND   WHERE
pool_key = '00:60:B3:45:6A:98'   AND NASIPAddress = 'x.x.x.x''
sqlippool_expand: 'SELECT FramedIPAddress FROM radippool   WHERE pool_name =
'rht900_124' AND expiry_time < NOW()   ORDER BY (UserName <>
'%{SQL-User-Name}'),   (CallingStationId <> '%{Calling-Station-Id}'),
expiry_time   LIMIT 1   FOR UPDATE'
radius_xlat:  'SELECT FramedIPAddress FROM radippool   WHERE pool_name =
'rht900_124' AND expiry_time < NOW()   ORDER BY (UserName <> ''),
(CallingStationId <> '00:60:B3:45:6A:98'), expiry_time   LIMIT 1   FOR
UPDATE'
rlm_sqlippool: ip=[172.168.124.52] len=14
sqlippool_expand: 'UPDATE radippool   SET NASIPAddress =
'%{NAS-IP-Address}', pool_key = '%{Calling-Station-Id}',   CallingStationId
= '%{Calling-Station-Id}', UserName = '%{SQL-User-Name}',   expiry_time =
NOW() + INTERVAL 3600 SECOND   WHERE FramedIPAddress = '172.168.124.52''
radius_xlat:  'UPDATE radippool   SET NASIPAddress = 'x.x.x.x', pool_key =
'00:60:B3:45:6A:98',   CallingStationId = '00:60:B3:45:6A:98', UserName =
'',   expiry_time = NOW() + INTERVAL 3600 SECOND   WHERE FramedIPAddress =
'172.168.124.52''
rlm_sqlippool: Allocated IP 172.168.124.52 [347ca8ac]
sqlippool_expand: 'COMMIT'
radius_xlat:  'COMMIT'
rlm_sql (sql): Released sql socket id: 2
  modcall[post-auth]: module "sqlippool" returns ok for request 0
rlm_sql (sql): Processing sql_postauth
radius_xlat:  'radiustest'
rlm_sql (sql): sql_set_user escaped user --> 'radiustest'
radius_xlat:  'INSERT into radpostauth (user, pass, reply, date) values
('radiustest', 'xxxxxxxx', 'Access-Accept', NOW())'
rlm_sql (sql) in sql_postauth: query is INSERT into radpostauth (user, pass,
reply, date) values ('radiustest', 'xxxxxxxx', 'Access-Accept', NOW())

On the bright side, the rlm_sql postauth_query now works Out Of Box.  :-)

> Peter Nixon
> http://peternixon.net/

   -- hugh





More information about the Freeradius-Users mailing list