ossim_valid($file, OSS_ALPHA, OSS_SCORE, OSS_DOT, OSS_NULLABLE, 'illegal:' . _('File')); ossim_valid($cache, 'true | false', 'illegal:' . _('Cache')); if (!ossim_error()) { $db = new ossim_db(); $conn = $db->connect(); if (!Ossec_utilities::is_sensor_allowed($conn, $sensor_id)) { ossim_set_error(_('Error! Sensor not allowed')); } $db->close(); } if (ossim_error()) { echo "<option value=''>" . _('No rule files found') . '</option>'; exit; } try { $rules = Ossec::get_rule_files($sensor_id, $cache); $options_e .= "<optgroup label='" . _('Editable rule file') . "'>\n"; $options_ne .= "<optgroup label='" . _('Rules files read-only') . "'>\n"; foreach ($rules as $rule) { $selected = $rule == $file ? ' selected="selected"' : ''; if (Ossec::is_editable($v)) { $options_e .= "<option style='text-align: left;' {$selected} value='{$rule}'>{$rule}</option>\n"; } else { $options_ne .= "<option style='text-align: left;' {$selected} value='{$rule}'>{$rule}</option>\n"; } } $options_e .= "</optgroup>\n"; $options_ne .= "</optgroup>\n"; echo $options_e . "\n" . $options_ne; } catch (Exception $e) { echo "<option value=''>" . _('No rule files found') . "</option>";
$db = new ossim_db(); $conn = $db->connect(); if (!Ossec_utilities::is_sensor_allowed($conn, $sensor_id)) { ossim_set_error(_('Error! Sensor not allowed')); } $db->close(); } if (ossim_error()) { echo '2###' . _('We found the followings errors') . ": <div style='padding-left: 15px; text-align:left;'>" . ossim_get_error_clean() . '</div>'; exit; } //Current sensor $_SESSION['ossec_sensor'] = $sensor_id; echo '1###'; try { $rules = Ossec::get_rule_files($sensor_id, FALSE); $options_e .= "<optgroup label='" . _('Editable rule file') . "'>\n"; $options_ne .= "<optgroup label='" . _('Rules files read-only') . "'>\n"; foreach ($rules as $rule) { if (Ossec::is_editable($rule)) { $options_e .= "<option style='text-align: left;' value='{$rule}'>{$rule}</option>\n"; } else { $options_ne .= "<option style='text-align: left;' value='{$rule}'>{$rule}</option>\n"; } } $options_e .= "</optgroup>\n"; $options_ne .= "</optgroup>\n"; $rule_options = $options_e . "\n" . $options_ne; } catch (Exception $e) { $rule_options = "<option value=''>" . _('No rule files found') . "</option>"; }
} //Current sensor $_SESSION['ossec_sensor'] = $sensor_id; if ($tab == '#tab1') { try { $conf_data = Ossec::get_configuration_file($sensor_id); $command = 'egrep "<[[:space:]]*include[[:space:]]*>.*xml<[[:space:]]*/[[:space:]]*include[[:space:]]*>" ?'; $output = Util::execute_command($command, array($conf_data['path']), 'array'); $rules_enabled = array(); foreach ($output as $k => $v) { if (preg_match("/^<\\s*include\\s*>(.*)<\\s*\\/include\\s*>/", trim($v), $match)) { $rules_enabled[] = $match[1]; } } sort($rules_enabled); $all_rules = Ossec::get_rule_files($sensor_id); $no_added_rules = array_diff($all_rules, $rules_enabled); echo "1###"; ?> <div id='cnf_rules_cont'> <table class='cnf_rules_table'> <tr> <td style='padding: 8px 0px 6px 0px;'><?php echo '(*) ' . _('Drag & Drop the file you want to add/remove or use [+] and [-] links'); ?> </td> </tr> <tr> <td class='sec_title'> <div style='float: left; width: 48%'><?php