mirror of
https://github.com/RaspAP/raspap-webgui.git
synced 2024-11-25 00:50:29 +00:00
Create getDefaultNetOpts()
This commit is contained in:
parent
22b173b4c5
commit
31e3afa4a4
3 changed files with 32 additions and 25 deletions
|
@ -11,6 +11,19 @@
|
|||
"static routers": [ "192.168.50.1" ],
|
||||
"static domain_name_server": [ "1.1.1.1 8.8.8.8" ],
|
||||
"subnetmask": [ "255.255.255.0" ]
|
||||
},
|
||||
"options": {
|
||||
"# RaspAP default configuration": null,
|
||||
"hostname": null,
|
||||
"clientid": null,
|
||||
"persistent": null,
|
||||
"option rapid_commit": null,
|
||||
"option domain_name_servers, domain_name, domain_search, host_name": null,
|
||||
"option classless_static_routes": null,
|
||||
"option ntp_servers": null,
|
||||
"require dhcp_server_identifier": null,
|
||||
"slaac private": null,
|
||||
"nohook lookup-hostname": null
|
||||
}
|
||||
},
|
||||
"dnsmasq": {
|
||||
|
@ -22,3 +35,4 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -29,27 +29,6 @@ function cidr2mask($cidr)
|
|||
return join ('.', $netmask);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a dhcp default config header
|
||||
*
|
||||
* @return array $config
|
||||
*/
|
||||
function defaultHeader()
|
||||
{
|
||||
$config = [ '# RaspAP default configuration' ];
|
||||
$config[] = 'hostname';
|
||||
$config[] = 'clientid';
|
||||
$config[] = 'persistent';
|
||||
$config[] = 'option rapid_commit';
|
||||
$config[] = 'option domain_name_servers, domain_name, domain_search, host_name';
|
||||
$config[] = 'option classless_static_routes';
|
||||
$config[] = 'option ntp_servers';
|
||||
$config[] = 'require dhcp_server_identifier';
|
||||
$config[] = 'slaac private';
|
||||
$config[] = 'nohook lookup-hostname';
|
||||
return $config;
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes a dhcp configuration block for the specified interface
|
||||
*
|
||||
|
@ -139,6 +118,22 @@ function getDefaultNetValue($svc,$iface,$key)
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns default options for the specified service
|
||||
*
|
||||
* @param string $svc
|
||||
* @return object $json
|
||||
*/
|
||||
function getDefaultNetOpts($svc)
|
||||
{
|
||||
$json = json_decode(file_get_contents(RASPI_CONFIG_NETWORK), true);
|
||||
if ($json === null) {
|
||||
return false;
|
||||
} else {
|
||||
return $json[$svc]['options'];
|
||||
}
|
||||
}
|
||||
|
||||
/* Functions to write ini files */
|
||||
|
||||
function write_php_ini($array, $file)
|
||||
|
|
|
@ -296,14 +296,13 @@ function SaveHostAPDConfig($wpa_array, $enc_types, $modes, $interfaces, $status)
|
|||
$ip_address.= (!preg_match('/.*\/\d+/', $ip_address)) ? '/'.mask2cidr($netmask) : null;
|
||||
|
||||
if ($bridgedEnable == 1) {
|
||||
$config = defaultHeader();
|
||||
$config = array_keys(getDefaultNetOpts('dhcp'));
|
||||
$config[] = PHP_EOL.'# RaspAP br0 configuration';
|
||||
$config[] = 'interface br0';
|
||||
$config[] = 'denyinterfaces eth0 wlan0';
|
||||
$config[] = PHP_EOL;
|
||||
} elseif ($wifiAPEnable == 1) {
|
||||
// Enable uap0 configuration for ap-sta
|
||||
$config = defaultHeader();
|
||||
$config = array_keys(getDefaultNetOpts('dhcp'));
|
||||
$config[] = PHP_EOL.'# RaspAP uap0 configuration';
|
||||
$config[] = 'interface uap0';
|
||||
$config[] = 'static ip_address='.$ip_address;
|
||||
|
@ -319,7 +318,6 @@ function SaveHostAPDConfig($wpa_array, $enc_types, $modes, $interfaces, $status)
|
|||
$config[] = 'static domain_name_server='.$domain_name_server;
|
||||
if (! is_null($jsonData['Metric'])) { $config[] = 'metric '.$jsonData['Metric']; }
|
||||
}
|
||||
|
||||
$dhcp_cfg = file_get_contents(RASPI_DHCPCD_CONFIG);
|
||||
if ($bridgedEnable == 1 || $wifiAPEnable == 1) {
|
||||
$dhcp_cfg = join(PHP_EOL, $config);
|
||||
|
|
Loading…
Reference in a new issue