R: freeradius-1.1.6 - mysql failover issue - bus error -

2007-07-03 Thread Francesco Cristofori
Hi all,
further investigations show that it's a name resolution problem (if I put IP 
addresses in mysql1.conf and mysql2.conf everything works fine).
So it doesn't seem to be a FR problem.

Regards,
Francesco Cristofori.

> -Messaggio originale-
> Da: 
> [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]
> freeradius
> .org]Per conto di Francesco Cristofori
> Inviato: martedì 3 luglio 2007 9.54
> A: freeradius-users@lists.freeradius.org
> Oggetto: freeradius-1.1.6 - mysql failover issue - bus error -
> 
> 
> Hi all,
> I'm setting up module fail-over for mysql backend following 
> the guide from the wiki, but something goes wrong.
> I included two sql.conf (mysql1.conf and mysql2.conf) in the 
> "modules" section and radiusd -X reports the two files are 
> included, but I only see the parameters from the first file 
> get loaded and everything stops with "bus error" when trying 
> to connect to the server.
> 
> I checked name resolution, mysql user/password, network 
> reachability and everything it's ok.
> I also set a tcpdump session on mysql1 but no packets for 
> mysql are coming in.
> Then I straced radiusd execution and I noticed it fails after 
> reading /etc/hosts (?!?).
> 
> Here's the relevant output from radiusd -X:
> 
> Module: Loaded SQL 
>  sql: driver = "rlm_sql_mysql"
>  sql: server = "mysql1.satcom.it"
>  sql: port = "3306"
>  sql: login = "radius"
>  sql: password = "radius"
>  sql: radius_db = "radius"
>  sql: nas_table = "nas"
>  sql: sqltrace = no
>  sql: sqltracefile = "/var/log/freeradius/sqltrace.sql"
>  sql: readclients = no
>  sql: deletestalesessions = yes
>  sql: num_sql_socks = 100
>  sql: sql_user_name = "%{User-Name}"
>  sql: default_user_profile = ""
>  sql: query_on_not_found = no
>  sql: authorize_check_query = "SELECT 
> id,UserName,Attribute,Value,op FROM radcheck WHERE Username = 
> '%{SQL-User-Name}' ORDER BY id"
>  sql: authorize_reply_query = "SELECT 
> id,UserName,Attribute,Value,op FROM radreply WHERE Username = 
> '%{SQL-User-Name}' ORDER BY id"
>  sql: authorize_group_check_query = "SELECT 
> radgroupcheck.id,radgroupcheck.GroupName,radgroupcheck.Attribu
> te,radgroupcheck.Value,radgroupcheck.op  FROM 
> radgroupcheck,usergroup WHERE usergroup.Username = 
> '%{SQL-User-Name}' AND usergroup.GroupName = 
> radgroupcheck.GroupName ORDER BY radgroupcheck.id"
>  sql: authorize_group_reply_query = "SELECT 
> radgroupreply.id,radgroupreply.GroupName,radgroupreply.Attribu
> te,radgroupreply.Value,radgroupreply.op  FROM 
> radgroupreply,usergroup WHERE usergroup.Username = 
> '%{SQL-User-Name}' AND usergroup.GroupName = 
> radgroupreply.GroupName ORDER BY radgroupreply.id"
>  sql: accounting_onoff_query = "UPDATE radacct SET 
> AcctStopTime='%S', AcctSessionTime=unix_timestamp('%S') - 
> unix_timestamp(AcctStartTime), 
> AcctTerminateCause='%{Acct-Terminate-Cause}', AcctStopDelay = 
> '%{Acct-Delay-Time}' WHERE AcctSessionTime=0 AND 
> AcctStopTime=0 AND NASIPAddress= '%{NAS-IP-Address}' AND 
> AcctStartTime <= '%S'"
>  sql: accounting_update_query = "UPDATE radacct ? SET 
> FramedIPAddress = '%{Framed-IP-Address}', ? AcctSessionTime = 
> '%{Acct-Session-Time}', ? AcctInputOctets = 
> '%{Acct-Input-Octets}', ? AcctOutputOctets = 
> '%{Acct-Output-Octets}' ? WHERE AcctSessionId = 
> '%{Acct-Session-Id}' ? AND UserName = '%{SQL-User-Name}' ? 
> AND NASIPAddress= '%{NAS-IP-Address}'"
>  sql: accounting_update_query_alt = "INSERT into radacct 
> (AcctSessionId, AcctUniqueId, UserName, Realm, NASIPAddress, 
> NASPortId, NASPortType, AcctStartTime, AcctSessionTime, 
> AcctAuthentic, ConnectInfo_start, AcctInputOctets, 
> AcctOutputOctets, CalledStationId, CallingStationId, 
> ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay) 
> values('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', 
> '%{SQL-User-Name}', '%{Realm}', '%{NAS-IP-Address}', 
> '%{NAS-Port}', '%{NAS-Port-Type}', DATE_SUB('%S',INTERVAL 
> (%{Acct-Session-Time:-0} + %{Acct-Delay-Time:-0}) SECOND), 
> '%{Acct-Session-Time}', '%{Acct-Authentic}', '', 
> '%{Acct-Input-Octets}', '%{Acct-Output-Octets}', 
> '%{Called-Station-Id}', '%{Calling-Station-Id}', 
> '%{Service-Type}', '%{F

freeradius-1.1.6 - mysql failover issue - bus error -

2007-07-03 Thread Francesco Cristofori
Hi all,
I'm setting up module fail-over for mysql backend following the guide from the 
wiki, but something goes wrong.
I included two sql.conf (mysql1.conf and mysql2.conf) in the "modules" section 
and radiusd -X reports the two files are included, but I only see the 
parameters from the first file get loaded and everything stops with "bus error" 
when trying to connect to the server.

I checked name resolution, mysql user/password, network reachability and 
everything it's ok.
I also set a tcpdump session on mysql1 but no packets for mysql are coming in.
Then I straced radiusd execution and I noticed it fails after reading 
/etc/hosts (?!?).

Here's the relevant output from radiusd -X:

Module: Loaded SQL 
 sql: driver = "rlm_sql_mysql"
 sql: server = "mysql1.satcom.it"
 sql: port = "3306"
 sql: login = "radius"
 sql: password = "radius"
 sql: radius_db = "radius"
 sql: nas_table = "nas"
 sql: sqltrace = no
 sql: sqltracefile = "/var/log/freeradius/sqltrace.sql"
 sql: readclients = no
 sql: deletestalesessions = yes
 sql: num_sql_socks = 100
 sql: sql_user_name = "%{User-Name}"
 sql: default_user_profile = ""
 sql: query_on_not_found = no
 sql: authorize_check_query = "SELECT id,UserName,Attribute,Value,op FROM 
radcheck WHERE Username = '%{SQL-User-Name}' ORDER BY id"
 sql: authorize_reply_query = "SELECT id,UserName,Attribute,Value,op FROM 
radreply WHERE Username = '%{SQL-User-Name}' ORDER BY id"
 sql: authorize_group_check_query = "SELECT 
radgroupcheck.id,radgroupcheck.GroupName,radgroupcheck.Attribute,radgroupcheck.Value,radgroupcheck.op
  FROM radgroupcheck,usergroup WHERE usergroup.Username = '%{SQL-User-Name}' 
AND usergroup.GroupName = radgroupcheck.GroupName ORDER BY radgroupcheck.id"
 sql: authorize_group_reply_query = "SELECT 
radgroupreply.id,radgroupreply.GroupName,radgroupreply.Attribute,radgroupreply.Value,radgroupreply.op
  FROM radgroupreply,usergroup WHERE usergroup.Username = '%{SQL-User-Name}' 
AND usergroup.GroupName = radgroupreply.GroupName ORDER BY radgroupreply.id"
 sql: accounting_onoff_query = "UPDATE radacct SET AcctStopTime='%S', 
AcctSessionTime=unix_timestamp('%S') - unix_timestamp(AcctStartTime), 
AcctTerminateCause='%{Acct-Terminate-Cause}', AcctStopDelay = 
'%{Acct-Delay-Time}' WHERE AcctSessionTime=0 AND AcctStopTime=0 AND 
NASIPAddress= '%{NAS-IP-Address}' AND AcctStartTime <= '%S'"
 sql: accounting_update_query = "UPDATE radacct ? SET FramedIPAddress = 
'%{Framed-IP-Address}', ? AcctSessionTime = '%{Acct-Session-Time}', ? 
AcctInputOctets = '%{Acct-Input-Octets}', ? AcctOutputOctets = 
'%{Acct-Output-Octets}' ? WHERE AcctSessionId = '%{Acct-Session-Id}' ? AND 
UserName = '%{SQL-User-Name}' ? AND NASIPAddress= '%{NAS-IP-Address}'"
 sql: accounting_update_query_alt = "INSERT into radacct (AcctSessionId, 
AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, 
AcctStartTime, AcctSessionTime, AcctAuthentic, ConnectInfo_start, 
AcctInputOctets, AcctOutputOctets, CalledStationId, CallingStationId, 
ServiceType, FramedProtocol, FramedIPAddress, AcctStartDelay) 
values('%{Acct-Session-Id}', '%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', 
'%{Realm}', '%{NAS-IP-Address}', '%{NAS-Port}', '%{NAS-Port-Type}', 
DATE_SUB('%S',INTERVAL (%{Acct-Session-Time:-0} + %{Acct-Delay-Time:-0}) 
SECOND), '%{Acct-Session-Time}', '%{Acct-Authentic}', '', 
'%{Acct-Input-Octets}', '%{Acct-Output-Octets}', '%{Called-Station-Id}', 
'%{Calling-Station-Id}', '%{Service-Type}', '%{Framed-Protocol}', 
'%{Framed-IP-Address}', '0')"
 sql: accounting_start_query = "INSERT into radacct (AcctSessionId, 
AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId, NASPortType, 
AcctStartTime, AcctStopTime, AcctSessionTime, AcctAuthentic, ConnectInfo_start, 
ConnectInfo_stop, AcctInputOctets, AcctOutputOctets, CalledStationId, 
CallingStationId, AcctTerminateCause, ServiceType, FramedProtocol, 
FramedIPAddress, AcctStartDelay, AcctStopDelay) values('%{Acct-Session-Id}', 
'%{Acct-Unique-Session-Id}', '%{SQL-User-Name}', '%{Realm}', 
'%{NAS-IP-Address}', '%{NAS-Port}', '%{NAS-Port-Type}', '%S', '0', '0', 
'%{Acct-Authentic}', '%{Connect-Info}', '', '0', '0', '%{Called-Station-Id}', 
'%{Calling-Station-Id}', '', '%{Service-Type}', '%{Framed-Protocol}', 
'%{Framed-IP-Address}', '%{Acct-Delay-Time}', '0')"
 sql: accounting_start_query_alt = "UPDATE radacct SET AcctStartTime = '%S', 
AcctStartDelay = '%{Acct-Delay-Time}', ConnectInfo_start = '%{Connect-Info}' 
WHERE AcctSessionId = '%{Acct-Session-Id}' AND UserName = '%{SQL-User-Name}' 
AND NASIPAddress = '%{NAS-IP-Address}'"
 sql: accounting_stop_query = "UPDATE radacct SET AcctStopTime = '%S', 
AcctSessionTime = '%{Acct-Session-Time}', AcctInputOctets = 
'%{Acct-Input-Octets}', AcctOutputOctets = '%{Acct-Output-Octets}', 
AcctTerminateCause = '%{Acct-Terminate-Cause}', AcctStopDelay = 
'%{Acct-Delay-Time}', ConnectInfo_stop = '%{Connect-Info}' WHERE AcctSessionId 
= '%{Acct-Session-Id}' AND UserName = '%{SQL-User-Name}' AND NASIPAddress = 
'%{NAS-IP-