Example #1
0
            $av_components .= '{"txt" : "' . $hostname . ' [' . $host_ip . ']", "id" :"' . $system_id . '" }';
            $cont++;
        }
    }
    ?>
    				var av_components = [ <?php 
    echo $av_components;
    ?>
 ];
    				Main.autocomplete_avc(av_components);
    												
    				$('#go').click(function() { Main.search(); }); 
    														
    				<?php 
    if ($external_access == TRUE && count($avc_list['data']) == 1) {
        $ip_data = Av_center::get_system_info_by_ip($conn, $ip);
        if ($ip_data['status'] == 'error') {
            if (is_array($avc_list['data']) && !empty($avc_list['data'])) {
                $system_ids = array_keys($avc_list['data']);
                $ip_data = Av_center::get_system_info_by_id($conn, $system_ids[0]);
            }
        }
        if ($ip_data['status'] == 'success') {
            ?>
    						Main.display_avc_info(false);
    																				
    						var data = {
    							system_id: '<?php 
            echo $ip_data['data']['system_id'];
            ?>
', 
    echo json_encode($data);
    exit;
} else {
    //Checking form token
    if (!isset($_POST['ajax_validation_all']) || POST('ajax_validation_all') == FALSE) {
        if (Token::verify('tk_form_a_deployment', POST('token')) == FALSE) {
            Token::show_error();
            exit;
        }
    }
    $validation_errors = validate_form_fields('POST', $validate);
    //Check Token
    if (empty($validation_errors)) {
        $db = new ossim_db();
        $conn = $db->connect();
        $res = Av_center::get_system_info_by_ip($conn, POST('sensor_ip'));
        if ($res['status'] == 'success') {
            $sensor_id = $res['data']['sensor_id'];
            $ossec_server_ip = $res['data']['admin_ip'];
            if (!Ossec_utilities::is_sensor_allowed($conn, $sensor_id)) {
                $validation_errors['sensor_ip'] = _('Error! Sensor not allowed');
            }
        } else {
            $validation_errors['sensor_ip'] = _('Error! Unable to validate sensor IP');
        }
        $db->close();
    }
}
if (is_array($validation_errors) && !empty($validation_errors)) {
    $data['status'] = 'error';
    if (POST('ajax_validation_all') == TRUE) {
    case 'list':
    case 'purge':
        $validate = array('sensor_ip' => array('validation' => 'OSS_IP_CIDR_0', 'e_message' => 'illegal:' . _('Sensor IP')));
        $d_data = array('sensor_ip' => POST('sensor_ip'));
        break;
}
$validation_errors = validate_form_fields('POST', $validate);
if (is_array($validation_errors) && !empty($validation_errors)) {
    $data['status'] = 'warning';
    $data['data'] = _('Error! Action could not be completed');
    echo json_encode($data);
    exit;
} else {
    $db = new ossim_db();
    $conn = $db->connect();
    $res = Av_center::get_system_info_by_ip($conn, $d_data['sensor_ip']);
    if ($res['status'] == 'success') {
        $sensor_id = $res['data']['sensor_id'];
        if (!Ossec_utilities::is_sensor_allowed($conn, $sensor_id)) {
            $data['status'] = 'error';
            $data['data'] = _('Error! Sensor not allowed');
        }
    } else {
        $data['status'] = 'error';
        $data['data'] = _('Error! Unable to validate sensor IP');
    }
    if ($data['status'] == 'error') {
        $db->close();
        echo json_encode($data);
        exit;
    }