Example #1
0
// print_r($pconfig);
$pconfig['blockpriv'] = isset($wancfg['blockpriv']);
$pconfig['blockbogons'] = isset($wancfg['blockbogons']);
$pconfig['spoofmac'] = $wancfg['spoofmac'];
$pconfig['mtu'] = $wancfg['mtu'];
$pconfig['mss'] = $wancfg['mss'];
/* Wireless interface? */
if (isset($wancfg['wireless'])) {
    /* Sync first to be sure it displays the actual settings that will be used */
    interface_sync_wireless_clones($wancfg, false);
    /* Get wireless modes */
    $wlanif = get_real_interface($if);
    if (!does_interface_exist($wlanif)) {
        interface_wireless_clone($wlanif, $wancfg);
    }
    $wlanbaseif = interface_get_wireless_base($wancfg['if']);
    preg_match("/^(.*?)([0-9]*)\$/", $wlanbaseif, $wlanbaseif_split);
    $wl_modes = get_wireless_modes($if);
    $wl_chaninfo = get_wireless_channel_info($if);
    $wl_sysctl_prefix = 'dev.' . $wlanbaseif_split[1] . '.' . $wlanbaseif_split[2];
    $wl_sysctl = get_sysctl(array("{$wl_sysctl_prefix}.diversity", "{$wl_sysctl_prefix}.txantenna", "{$wl_sysctl_prefix}.rxantenna", "{$wl_sysctl_prefix}.slottime", "{$wl_sysctl_prefix}.acktimeout", "{$wl_sysctl_prefix}.ctstimeout"));
    $wl_regdomain_xml_attr = array();
    $wl_regdomain_xml = parse_xml_regdomain($wl_regdomain_xml_attr);
    $wl_regdomains =& $wl_regdomain_xml['regulatory-domains']['rd'];
    $wl_regdomains_attr =& $wl_regdomain_xml_attr['regulatory-domains']['rd'];
    $wl_countries =& $wl_regdomain_xml['country-codes']['country'];
    $wl_countries_attr =& $wl_regdomain_xml_attr['country-codes']['country'];
    $pconfig['persistcommonwireless'] = isset($config['wireless']['interfaces'][$wlanbaseif]);
    $pconfig['standard'] = $wancfg['wireless']['standard'];
    $pconfig['mode'] = $wancfg['wireless']['mode'];
    $pconfig['protmode'] = $wancfg['wireless']['protmode'];
Example #2
0
            $toapplylist[$if]['ifcfg'] = $old_config;
            $toapplylist[$if]['ppps'] = $old_ppps;
            file_put_contents('/tmp/.interfaces.apply', serialize($toapplylist));
            mark_subsystem_dirty('interfaces');
            /* regenerate cron settings/crontab file */
            configure_cron();
            header("Location: interfaces.php?if={$if}");
            exit;
        }
    }
}
legacy_html_escape_form_data($pconfig);
// some wireless settings require additional details to build the listbox
if (isset($a_interfaces[$if]['wireless'])) {
    $wl_modes = get_wireless_modes($if);
    $wlanbaseif = interface_get_wireless_base($a_interfaces[$if]['if']);
    preg_match("/^(.*?)([0-9]*)\$/", $wlanbaseif, $wlanbaseif_split);
    $wl_sysctl_prefix = 'dev.' . $wlanbaseif_split[1] . '.' . $wlanbaseif_split[2];
    $wl_sysctl = get_sysctl(array("{$wl_sysctl_prefix}.diversity", "{$wl_sysctl_prefix}.txantenna", "{$wl_sysctl_prefix}.rxantenna", "{$wl_sysctl_prefix}.slottime", "{$wl_sysctl_prefix}.acktimeout", "{$wl_sysctl_prefix}.ctstimeout"));
    $wl_regdomain_xml_attr = array();
    $wl_regdomain_xml = parse_xml_regdomain($wl_regdomain_xml_attr);
    $wl_regdomains =& $wl_regdomain_xml['regulatory-domains']['rd'];
    $wl_regdomains_attr =& $wl_regdomain_xml_attr['regulatory-domains']['rd'];
    $wl_countries =& $wl_regdomain_xml['country-codes']['country'];
    $wl_countries_attr =& $wl_regdomain_xml_attr['country-codes']['country'];
}
// Find all possible media options for the interface
$mediaopts_list = array();
exec("/sbin/ifconfig -m {$pconfig['if']} | grep \"media \"", $mediaopts);
foreach ($mediaopts as $mediaopt) {
    preg_match("/media (.*)/", $mediaopt, $matches);