function form_mactrack_save() { global $config; if (isset_request_var('save_component_device') && isempty_request_var('add_dq_y')) { $device_id = api_mactrack_device_save(get_nfilter_request_var('device_id'), get_nfilter_request_var('host_id'), get_nfilter_request_var('site_id'), get_nfilter_request_var('hostname'), get_nfilter_request_var('device_name'), get_nfilter_request_var('scan_type'), get_nfilter_request_var('snmp_options'), get_nfilter_request_var('snmp_readstring'), get_nfilter_request_var('snmp_version'), get_nfilter_request_var('snmp_username'), get_nfilter_request_var('snmp_password'), get_nfilter_request_var('snmp_auth_protocol'), get_nfilter_request_var('snmp_priv_passphrase'), get_nfilter_request_var('snmp_priv_protocol'), get_nfilter_request_var('snmp_context'), get_nfilter_request_var('snmp_engine_id'), get_nfilter_request_var('snmp_port'), get_nfilter_request_var('snmp_timeout'), get_nfilter_request_var('snmp_retries'), get_nfilter_request_var('max_oids'), get_nfilter_request_var('ignorePorts'), get_nfilter_request_var('notes'), get_nfilter_request_var('user_name'), get_nfilter_request_var('user_password'), get_nfilter_request_var('term_type'), get_nfilter_request_var('private_key_path'), isset_request_var('disabled') ? get_nfilter_request_var('disabled') : ''); header('Location: mactrack_devices.php?action=edit&device_id=' . (empty($device_id) ? get_filter_request_var('device_id') : $device_id)); } if (isset_request_var('save_component_import')) { if ($_FILES['import_file']['tmp_name'] != 'none' && $_FILES['import_file']['tmp_name'] != '') { /* file upload */ $csv_data = file($_FILES['import_file']['tmp_name']); /* obtain debug information if it's set */ $debug_data = mactrack_device_import_processor($csv_data); if (sizeof($debug_data) > 0) { $_SESSION['import_debug_info'] = $debug_data; } } else { header('Location: mactrack_devices.php?action=import'); exit; } header('Location: mactrack_devices.php?action=import'); } }
/** * perform mactrack_device execute action * @arg $action action to be performed * return - * */ function mactrack_device_action_execute($action) { global $config; # it's our turn if ($action == 'plugin_mactrack_device') { /* mactrack */ /* find out which (if any) hosts have been checked, so we can tell the user */ if (isset_request_var('selected_items')) { $selected_items = sanitize_unserialize_selected_items(get_nfilter_request_var('selected_items')); if ($selected_items != false) { /* work on all selected hosts */ for ($i = 0; $i < count($selected_items); $i++) { # fetch row from host table $device = db_fetch_row_prepared('SELECT * from host WHERE id = ?', array($selected_items[$i])); # now fetch the related device from mac_track_devices, if any $mt_device = db_fetch_row_prepared('SELECT * from mac_track_devices WHERE host_id = ?', array($device['id'])); if (is_array($device)) { # update mac_track_device $device_id = api_mactrack_device_save(isset($mt_device['device_id']) ? $mt_device['device_id'] : '0', $device['id'], get_request_var('site_id'), $device['hostname'], $device['description'], get_request_var('scan_type'), get_request_var('snmp_options'), $device['snmp_community'], $device['snmp_version'], $device['snmp_username'], $device['snmp_password'], $device['snmp_auth_protocol'], $device['snmp_priv_passphrase'], $device['snmp_priv_protocol'], $device['snmp_context'], $device['snmp_engine_id'], $device['snmp_port'], $device['snmp_timeout'], get_request_var('snmp_retries'), $device['max_oids'], get_request_var('ignorePorts'), $device['notes'], get_request_var('user_name'), get_request_var('user_password'), get_request_var('term_type'), get_request_var('private_key_path'), isset_request_var('disabled') ? get_request_var('disabled') : ''); } } } } } return $action; }
function form_mactrack_save() { global $config; include_once($config["base_path"] . "/plugins/mactrack/mactrack_actions.php"); if ((isset($_POST["save_component_device"])) && (empty($_POST["add_dq_y"]))) { $device_id = api_mactrack_device_save($_POST["device_id"], $_POST["host_id"], $_POST["site_id"], $_POST["hostname"], $_POST["device_name"], $_POST["scan_type"], $_POST["snmp_options"], $_POST["snmp_readstring"], $_POST["snmp_version"], $_POST["snmp_username"], $_POST["snmp_password"], $_POST["snmp_auth_protocol"], $_POST["snmp_priv_passphrase"], $_POST["snmp_priv_protocol"], $_POST["snmp_context"], $_POST["snmp_port"], $_POST["snmp_timeout"], $_POST["snmp_retries"], $_POST["max_oids"], $_POST["ignorePorts"], $_POST["notes"], $_POST["user_name"], $_POST["user_password"], $_POST["term_type"], $_POST["private_key_path"], (isset($_POST["disabled"]) ? $_POST["disabled"] : "")); $scan = exec("php ".$config["base_path"] . "/plugins/mactrack/mactrack_scanner.php -id=".$device_id); header("Location: mactrack_devices.php?action=edit&device_id=" . (empty($device_id) ? $_POST["device_id"] : $device_id) . (strpos($scan,"Complete")!==false ? "&scan=1" : "&scan=-1")); } if (isset($_POST["save_component_import"])) { if (($_FILES["import_file"]["tmp_name"] != "none") && ($_FILES["import_file"]["tmp_name"] != "")) { /* file upload */ $csv_data = file($_FILES["import_file"]["tmp_name"]); /* obtain debug information if it's set */ $debug_data = mactrack_device_import_processor($csv_data); if(sizeof($debug_data) > 0) { $_SESSION["import_debug_info"] = $debug_data; } }else{ header("Location: mactrack_devices.php?action=import"); exit; } header("Location: mactrack_devices.php?action=import"); } }
/** * perform mactrack_device execute action * @arg $action action to be performed * return - * */ function mactrack_device_action_execute($action) { global $config; # it's our turn if ($action == "plugin_mactrack_device") { /* mactrack */ /* find out which (if any) hosts have been checked, so we can tell the user */ if (isset($_POST["selected_items"])) { $selected_items = unserialize(stripslashes($_POST["selected_items"])); /* work on all selected hosts */ for ($i=0;($i<count($selected_items));$i++) { /* ================= input validation ================= */ input_validate_input_number($selected_items[$i]); /* ==================================================== */ # fetch row from host table $device = db_fetch_row("SELECT * from host WHERE id=" . $selected_items[$i]); # now fetch the related device from mac_track_devices, if any $mt_device = db_fetch_row("SELECT * from mac_track_devices WHERE host_id=" . $device["id"]); if (is_array($device)) { # update mac_track_device $device_id = api_mactrack_device_save( (isset($mt_device["device_id"]) ? $mt_device["device_id"] : "0"), # not a host column $device["id"], $_POST["site_id"], # not a host column (wait for 088) $device["hostname"], $device["description"], $_POST["scan_type"], # not a host column $_POST["snmp_options"], # not a host column $device["snmp_community"], $device["snmp_version"], $device["snmp_username"], $device["snmp_password"], $device["snmp_auth_protocol"], $device["snmp_priv_passphrase"], $device["snmp_priv_protocol"], $device["snmp_context"], $device["snmp_port"], $device["snmp_timeout"], $_POST["snmp_retries"], $device["max_oids"], $_POST["ignorePorts"], # not a host column $device["notes"], $_POST["user_name"], # not a host column $_POST["user_password"], # not a host column $_POST["term_type"], $_POST["private_key_path"], (isset($_POST["disabled"]) ? $_POST["disabled"] : "")); # not a host column } } } } return $action; }