Does anyone knows why there's $clientip instead of $cpdb[$i][2] in this
piece of code?
/* find an existing entry and delete it */
for ($i = 0; $i < count($cpdb); $i++) {
if(!strcasecmp($cpdb[$i][2],$clientip)) {
if(isset($config['captiveportal']['radacct_enable']) &&
isset($radiusservers[0])) {
RADIUS_ACCOUNTING_STOP($cpdb[$i][1],
$cpdb[$i][4], // username
$cpdb[$i][5], // sessionid
$cpdb[$i][0], // start time
$radiusservers[0]['ipaddr'],
$radiusservers[0]['acctport'],
$radiusservers[0]['key'],
$clientip, <=== Why do we use the new ip instead of the previous one
recorded in the database. IMHO this breaks the radius accounting since
the stop will be with the new ip instead of the recorded ip.
J.
--
Jonathan De Graeve
Network/System Administrator
Imelda vzw
Informatica Dienst
015/50.52.98
Jonathan dot de dot graeve at imelda dot be |