function master_index() { @unlink($GLOBALS["MasterIndexFile"]); $ini = new iniFrameWork(); $ini->loadFile('/etc/artica-postfix/artica-update.conf'); if (trim($ini->_params["AUTOUPDATE"]["autoinstall"]) == null) { $ini->_params["AUTOUPDATE"]["autoinstall"] = "yes"; } if ($ini->_params["AUTOUPDATE"]["autoinstall"] != "yes") { $autoinstall = false; } $uri = $ini->_params["AUTOUPDATE"]["uri"]; $arrayURI = parse_url($uri); $MAIN_URI = "{$arrayURI["scheme"]}://{$arrayURI["host"]}"; echo "Starting......: " . date("H:i:s") . " Refreshing index file...\n"; $curl = new ccurl("{$uri}?time=" . time()); if (!$curl->GetFile($GLOBALS["MasterIndexFile"])) { _artica_update_event(0, "Error {$curl->error}", null, __FILE__, __LINE__); echo "Starting......: " . date("H:i:s") . " Error {$curl->error_num};{$curl->error}, Try direct\n"; if (!$GLOBALS["NOT_FORCE_PROXY"]) { echo "Starting......: " . date("H:i:s") . " FATAL: Unable to download index file, try in direct mode\n"; $GLOBALS["NOT_FORCE_PROXY"] = true; return master_index(); } if ($curl->error == "{CURLE_COULDNT_RESOLVE_HOST}") { if ($arrayURI["host"] == "www.artica.fr") { if (!$GLOBALS["CHANGED"]) { echo "Starting......: " . date("H:i:s") . " trying www.articatech.net\n"; $ini->_params["AUTOUPDATE"]["uri"] = "http://www.articatech.net/auto.update.php"; $ini->saveFile("/etc/artica-postfix/artica-update.conf"); $GLOBALS["CHANGED"] = true; return master_index(); } } } return; } if (!is_file($GLOBALS["MasterIndexFile"])) { echo "Starting......: " . date("H:i:s") . " {$GLOBALS["MasterIndexFile"]} no such file...\n"; return; } return true; }