function doPost() { global $conf_centreon; $db = dbConnect($conf_centreon['hostCentreon'], $conf_centreon['user'], $conf_centreon['password'], $conf_centreon['db'], true); $error = 0; if (isset($_POST["submit"]) && $_POST["submit"] == "Add") { if (isset($_POST["os"]) && isset($_POST["template"])) { mysql_query("INSERT INTO mod_discovery_template_os_relation (os,template) VALUES('" . $_POST["os"] . "','" . $_POST["template"] . "');"); $_POST = array(); } else { $error = 1; } } if (isset($_POST["save"])) { /* Couleurs */ if (isset($_POST['host_exists']) && isset($_POST['ip_exists']) && isset($_POST['host_missing']) && isset($_POST['consider_fqdn'])) { mysql_query("UPDATE mod_discovery_config SET host_exists_color='" . $_POST["host_exists"] . "', ip_exists_color='" . $_POST["ip_exists"] . "', host_missing_color='" . $_POST["host_missing"] . "', consider_fqdn='" . $_POST['consider_fqdn'] . "'") or die(mysql_error()); } /* NMAP */ if (isset($_POST["profil_nmap"])) { mysql_query("UPDATE mod_discovery_rangeip SET nmap_profil='" . $_POST["profil_nmap"] . "' WHERE id=0;"); } if (isset($_POST["nmap_timeout"]) && is_int(intval($_POST["nmap_timeout"])) && $_POST["nmap_timeout"] >= 15000 && $_POST["nmap_timeout"] < 100000) { mysql_query("UPDATE mod_discovery_rangeip SET nmap_host_timeout='" . $_POST["nmap_timeout"] . "' WHERE id=0;"); } if (isset($_POST["nmap_timeout_rtt"]) && is_int(intval($_POST["nmap_timeout_rtt"])) && $_POST["nmap_timeout_rtt"] >= 100 && $_POST["nmap_timeout_rtt"] < 10000) { mysql_query("UPDATE mod_discovery_rangeip SET nmap_max_rtt_timeout='" . $_POST["nmap_timeout_rtt"] . "' WHERE id=0;"); } if (isset($_POST["nmap_retries"]) && is_int(intval($_POST["nmap_retries"])) && $_POST["nmap_retries"] >= 0 && $_POST["nmap_retries"] < 100) { mysql_query("UPDATE mod_discovery_rangeip SET nmap_max_retries='" . $_POST["nmap_retries"] . "' WHERE id=0;"); } /* OID */ if (isset($_POST["hostname"]) && !empty($_POST["hostname"]) && ereg("^(\\.([1-9][0-9]+|[0-9]))+\$", $_POST["hostname"])) { mysql_query("UPDATE mod_discovery_rangeip SET oid_hostname='" . $_POST["hostname"] . "' WHERE id=0;"); } if (isset($_POST["OS"]) && !empty($_POST["OS"]) && ereg("^(\\.([1-9][0-9]+|[0-9]))+\$", $_POST["OS"])) { mysql_query("UPDATE mod_discovery_rangeip SET oid_os='" . $_POST["OS"] . "' WHERE id=0;"); } /* SNMP */ if (isset($_POST["version"])) { mysql_query("UPDATE mod_discovery_rangeip SET snmp_version='" . $_POST["version"] . "' WHERE id=0;"); } if (isset($_POST["port"]) && is_int(intval($_POST["port"])) && $_POST["port"] > 0 && $_POST["port"] < 65536) { mysql_query("UPDATE mod_discovery_rangeip SET snmp_port='" . $_POST["port"] . "' WHERE id=0;"); } if (isset($_POST["retries"]) && is_int(intval($_POST["retries"])) && $_POST["retries"] >= 0 && $_POST["retries"] < 100) { mysql_query("UPDATE mod_discovery_rangeip SET snmp_retries='" . $_POST["retries"] . "' WHERE id=0;"); } if (isset($_POST["timeout"]) && is_int(intval($_POST["timeout"])) && $_POST["timeout"] > 0 && $_POST["timeout"] < 100) { mysql_query("UPDATE mod_discovery_rangeip SET snmp_timeout='" . $_POST["timeout"] . "' WHERE id=0;"); } if (isset($_POST["community"]) && !strpos($_POST["community"], " ") && !empty($_POST["community"])) { mysql_query("UPDATE mod_discovery_rangeip SET snmp_community='" . $_POST["community"] . "' WHERE id=0;"); } echo '<META HTTP-EQUIV="Refresh" CONTENT="1; URL=main.php?p=61203">'; echo '<META HTTP-EQUIV="Refresh" CONTENT="1; URL=main.php?p=61203">'; } if (isset($_POST["defaults"])) { $reqDefault = mysql_query("SELECT * FROM mod_discovery_rangeip WHERE id=-1;"); while ($default = mysql_fetch_array($reqDefault, MYSQL_ASSOC)) { mysql_query("UPDATE mod_discovery_rangeip SET nmap_profil='" . $default['nmap_profil'] . "', nmap_host_timeout='" . $default['nmap_host_timeout'] . "', nmap_max_rtt_timeout='" . $default['nmap_max_rtt_timeout'] . "', nmap_max_retries='" . $default['nmap_max_retries'] . "', snmp_port='" . $default['snmp_port'] . "', snmp_retries='" . $default['snmp_retries'] . "', snmp_timeout='" . $default['snmp_timeout'] . "', snmp_community='" . $default['snmp_community'] . "', snmp_version='" . $default['snmp_version'] . "', oid_os='" . $default['oid_os'] . "', oid_hostname='" . $default['oid_hostname'] . "' WHERE id=0;"); } } if (isset($_POST["clear"]) && $_POST["clear"] == " Clear All ") { mysql_query("DELETE FROM mod_discovery_template_os_relation"); } if (!empty($_POST)) { $templateIDList = mysql_query("SELECT id FROM mod_discovery_template_os_relation;"); while ($templateIDListData = mysql_fetch_array($templateIDList, MYSQL_ASSOC)) { $id = $templateIDListData["id"]; $postVar = $id . "_x"; if (isset($_POST[$postVar]) || isset($_POST[$id])) { mysql_query("DELETE FROM mod_discovery_template_os_relation WHERE id='" . $id . "';"); } } unset($_POST); } if (isset($_GET["id"])) { $id = $_GET["id"]; if ($id < 1 || $id > 2) { $id = 1; } doFormTab($id); doForm($id, $error); } else { doFormTab(1); doForm(1, $error); } dbClose($db); }
function doPost() { global $error, $conf_centreon; $db = dbConnect($conf_centreon['hostCentreon'], $conf_centreon['user'], $conf_centreon['password'], $conf_centreon['db'], true); if (isset($_POST["net"])) { $nbPlage = mysql_query("SELECT count(*) FROM mod_discovery_rangeip WHERE id!=0;"); $nbPlageData = mysql_fetch_array($nbPlage); if ($nbPlageData[0] <= 15) { $tmp = explode(" ", $_POST["net"]); if (isset($tmp[1])) { if (validateIpAddress($tmp[0]) && validateMask($tmp[1])) { $netAddr = ip2Subnet($tmp[0], $tmp[1]); if (mysql_num_rows(mysql_query("SELECT * FROM mod_discovery_rangeip WHERE plage='" . $netAddr . "';")) == 0) { $poller = findPoller($netAddr, maskToCidr($tmp[1])); if (!mysql_query("INSERT INTO mod_discovery_rangeip (plage,masque,cidr,nagios_server_id) VALUES('" . $netAddr . "','" . $tmp[1] . "','" . maskToCidr($tmp[1]) . "','" . $poller["poller_id"] . "');")) { echo mysql_error(); } } else { $error = 2; } } else { $error = 1; } } else { $tmp = explode("/", $_POST["net"]); if ($tmp[1]) { if (validateIpAddress($tmp[0]) && validateCidr($tmp[1])) { $netAddr = ip2Subnet($tmp[0], cidrToMask($tmp[1])); if (mysql_num_rows(mysql_query("SELECT * FROM mod_discovery_rangeip WHERE plage='" . $netAddr . "';")) == 0) { $poller = findPoller($netAddr, $tmp[1]); if (!mysql_query("INSERT INTO mod_discovery_rangeip (plage,masque,cidr,nagios_server_id) VALUES('" . $netAddr . "','" . cidrToMask($tmp[1]) . "','" . $tmp[1] . "','" . $poller["poller_id"] . "');")) { echo mysql_error(); } } else { $error = 2; } } else { $error = 1; } } else { $error = 1; } } } else { $error = 3; } unset($_POST); } if (isset($_POST["ClearAll"])) { if ($_POST["ClearAll"] == " Clear All ") { clearArray(); } } if (isset($_GET["id"])) { clearRow($_GET["id"]); unset($_GET); } doInput($error); doFormTab($error); dbClose($db); }