function STATS_CNX_REJECT_parse($path) { events("STATS_CNX_REJECT_parse(): Scanning {$path}"); if ($GLOBALS["VERBOSE"]) { echo "Parsing {$path}\n"; } $db_con = dba_open($path, "r", "db4"); if (!$db_con) { echo "DB open {$path} failed\n"; return false; } $fam = new familysite(); $SQL1 = array(); $mainkey = dba_firstkey($db_con); while ($mainkey != false) { if ($GLOBALS["VERBOSE"]) { echo "STATS_CNX_REJECT_parse: FECTH\n"; } $data = dba_fetch($mainkey, $db_con); $ARRAY = unserialize($data); if (!isset($ARRAY["IPADDR"])) { if ($ARRAY["HOSTNAME"] == null) { $mainkey = dba_nextkey($db_con); continue; } } if ($ARRAY["IPADDR"] == "127.0.0.1") { $mainkey = dba_nextkey($db_con); continue; } $zmd5 = md5($data); $error = mysql_escape_string2($ARRAY["error"]); if (!isset($ARRAY["DATE"])) { $ARRAY["DATE"] = date("Y-m-d H:i:s", $ARRAY["TIME"]); } if ($ARRAY["DATE"] == null) { $ARRAY["DATE"] = date("Y-m-d H:i:s", $ARRAY["TIME"]); } if ($ARRAY["HOSTNAME"] == null) { if ($ARRAY["IPADDR"] == null) { $mainkey = dba_nextkey($db_con); continue; } } if ($ARRAY["HOSTNAME"] == null) { $ARRAY["HOSTNAME"] = $fam->GetComputerName($ARRAY["IPADDR"]); } $familysite = $fam->GetFamilySites($ARRAY["HOSTNAME"]); $SQL1[date("YmdH", $ARRAY["TIME"])][] = "('{$zmd5}','{$ARRAY["DATE"]}','{$ARRAY["HOSTNAME"]}','{$familysite}','{$ARRAY["IPADDR"]}','{$error}')"; if ($GLOBALS["VERBOSE"]) { echo "('{$zmd5}','{$ARRAY["DATE"]}','{$ARRAY["HOSTNAME"]}','{$familysite}','{$ARRAY["IPADDR"]}','{$error}')\n"; } if ($GLOBALS["VERBOSE"]) { echo "STATS_CNX_REJECT_parse: NEXT KEY\n"; } $mainkey = dba_nextkey($db_con); } if ($GLOBALS["VERBOSE"]) { echo "Closing {$path}\n"; } dba_close($db_con); if (count($SQL1) > 0) { $q = new mysql_postfix_builder(); while (list($TIMESTAMP, $rows) = each($SQL1)) { if (!$q->postfix_buildhour_failed_connections($TIMESTAMP)) { events("STATS_CNX_REJECT_parse(): postfix_buildhour_failed_connections({$TIMESTAMP}) return failed"); return false; } $sql = "INSERT IGNORE INTO {$TIMESTAMP}_hfcnx (`zmd5`,`zDate`,`hostname`,`domain`,`ipaddr`,`WHY`) VALUES " . @implode(",", $rows); if ($GLOBALS["VERBOSE"]) { echo "QUERY_SQL\n"; } $q->QUERY_SQL($sql); if (!$q->ok) { events("STATS_CNX_REJECT_parse(): {$q->mysql_error}"); echo $q->mysql_error; return false; } } } events("STATS_CNX_REJECT_parse(): {$path} Success"); if ($GLOBALS["VERBOSE"]) { echo "Parsing {$path} END\n"; } return true; }