示例#1
0
 } elseif (!empty($_POST['action']) && $_POST['action'] == "ResetRRD") {
     $savemsg = gettext('RRD data has been cleared.');
     mwexec('/bin/rm /var/db/rrd/*');
     enable_rrd_graphing();
     setup_gateways_monitor();
 } else {
     $input_errors = array();
     $pconfig = $_POST;
     /* input validation */
     if (!empty($pconfig['enable']) && !is_valid_syslog_server($pconfig['remoteserver'])) {
         $input_errors[] = gettext("A valid IP address/hostname or IP/hostname:port must be specified for remote syslog server #1.");
     }
     if (!empty($pconfig['enable']) && !empty($pconfig['remoteserver2']) && !is_valid_syslog_server($pconfig['remoteserver2'])) {
         $input_errors[] = gettext("A valid IP address/hostname or IP/hostname:port must be specified for remote syslog server #2.");
     }
     if (!empty($pconfig['enable']) && !empty($pconfig['remoteserver3']) && !is_valid_syslog_server($_POST['remoteserver3'])) {
         $input_errors[] = gettext("A valid IP address/hostname or IP/hostname:port must be specified for remote syslog server #3.");
     }
     if ($pconfig['nentries'] < 5 || $pconfig['nentries'] > 2000) {
         $input_errors[] = gettext("Number of log entries to show must be between 5 and 2000.");
     }
     if (!empty($pconfig['logfilesize']) && strlen($pconfig['logfilesize']) > 0) {
         if (!is_numeric($pconfig['logfilesize']) || $pconfig['logfilesize'] < 5120) {
             $input_errors[] = gettext("Log file size must be a positive integer greater than 5120.");
         }
     }
     if (count($input_errors) == 0) {
         $config['syslog']['reverse'] = !empty($pconfig['reverse']) ? true : false;
         $config['syslog']['nentries'] = (int) $pconfig['nentries'];
         if (isset($_POST['logfilesize']) && strlen($pconfig['logfilesize']) > 0) {
             $config['syslog']['logfilesize'] = (int) $pconfig['logfilesize'];
    return is_ipaddr($target) || is_ipaddrwithport($target) || is_hostname($target) || is_hostnamewithport($target);
}
if ($_POST['resetlogs'] == gettext("Reset Log Files")) {
    clear_all_log_files();
    $savemsg .= gettext("The log files have been reset.");
} elseif ($_POST) {
    unset($input_errors);
    $pconfig = $_POST;
    /* input validation */
    if ($_POST['enable'] && !is_valid_syslog_server($_POST['remoteserver'])) {
        $input_errors[] = gettext("A valid IP address/hostname or IP/hostname:port must be specified for remote syslog server #1.");
    }
    if ($_POST['enable'] && $_POST['remoteserver2'] && !is_valid_syslog_server($_POST['remoteserver2'])) {
        $input_errors[] = gettext("A valid IP address/hostname or IP/hostname:port must be specified for remote syslog server #2.");
    }
    if ($_POST['enable'] && $_POST['remoteserver3'] && !is_valid_syslog_server($_POST['remoteserver3'])) {
        $input_errors[] = gettext("A valid IP address/hostname or IP/hostname:port must be specified for remote syslog server #3.");
    }
    if ($_POST['nentries'] < 5 || $_POST['nentries'] > 2000) {
        $input_errors[] = gettext("Number of log entries to show must be between 5 and 2000.");
    }
    if (isset($_POST['logfilesize']) && strlen($_POST['logfilesize']) > 0) {
        if (!is_numeric($_POST['logfilesize']) || $_POST['logfilesize'] < 100000) {
            $input_errors[] = gettext("Log file size must be numeric and greater than or equal to 100000.");
        }
    }
    if (!$input_errors) {
        $config['syslog']['reverse'] = $_POST['reverse'] ? true : false;
        $config['syslog']['nentries'] = (int) $_POST['nentries'];
        $pconfig['nentries'] = $config['syslog']['nentries'];
        if (isset($_POST['logfilesize']) && strlen($_POST['logfilesize']) > 0) {