From: kkalev Date: Thu, 26 Sep 2002 10:01:23 +0000 (+0000) Subject: Fix a problem in user_accounting when NASIPAddress is not set. X-Git-Url: https://git.entuzijast.net/?a=commitdiff_plain;h=694d5397657f63c910ed60bab0bd77d0fe489ab4;p=freeradius-dialup-admin.git Fix a problem in user_accounting when NASIPAddress is not set. --- diff --git a/Changelog b/Changelog index 792174f..012e114 100644 --- a/Changelog +++ b/Changelog @@ -12,6 +12,7 @@ Ver 1.60: is localhost, add an option to scan the whole radius.log and add failed logins in the sql database (can be used for initialization). * html fixes in accounting.php3 +* Fix a problem in user_accounting when NASIPAddress is not set. Ver 1.59: * Small html fixes in user_edit.php3 and password.php3 * Show number of failed logins in the last 7 days in the user admin page diff --git a/bin/log_badlogins b/bin/log_badlogins index 0b7fd11..a3228b7 100755 --- a/bin/log_badlogins +++ b/bin/log_badlogins @@ -118,7 +118,6 @@ for(;;){ print TMP "INSERT INTO $sql_accounting_table (UserName,NASIPAddress,NASPortId,AcctStartTime,AcctStopTime,AcctSessionTime,AcctInputOctets,AcctOutputOctets,CallingStationId,AcctTerminateCause) VALUES ('$user','$addr','$port','$time','$time','0','0','0','$caller','$cause');"; close TMP; `$mysql -h$sql_server -u$sql_username $pass $sql_database <$tmpfile`; - print "$mysql -h$sql_server -u$sql_username $pass $sql_database <$tmpfile\n"; } } } diff --git a/htdocs/user_accounting.php3 b/htdocs/user_accounting.php3 index 3bab802..e4d944a 100644 --- a/htdocs/user_accounting.php3 +++ b/htdocs/user_accounting.php3 @@ -103,16 +103,21 @@ if ($link){ $acct_download = $row[AcctOutputOctets]; $acct_download_sum += $acct_download; $acct_download = bytes2str($acct_download); - $acct_server = $da_name_cache[$row[NASIPAddress]]; - if (!isset($acct_server)){ - $acct_server = gethostbyaddr($row[NASIPAddress]); - if (!isset($da_name_cache) && $config[general_use_session] == 'yes'){ - $da_name_cache[$row[NASIPAddress]] = $acct_server; - session_register('da_name_cache'); + $acct_server = $row[NASIPAddress]; + if ($acct_server != ''){ + $acct_server = $da_name_cache[$row[NASIPAddress]]; + if (!isset($acct_server)){ + $acct_server = gethostbyaddr($row[NASIPAddress]); + if (!isset($da_name_cache) && $config[general_use_session] == 'yes'){ + $da_name_cache[$row[NASIPAddress]] = $acct_server; + session_register('da_name_cache'); + } + else + $da_name_cache[$row[NASIPAddress]] = $acct_server; } - else - $da_name_cache[$row[NASIPAddress]] = $acct_server; } + else + $acct_server = '-'; $acct_server = "$acct_server:$row[NASPortId]"; $acct_terminate_cause = "$row[AcctTerminateCause]"; if ($acct_terminate_cause == '')