22 lines
926 B
PHP
22 lines
926 B
PHP
<?php
|
|
require_once "common.php";
|
|
require_once "load-conf.php";
|
|
|
|
$ranges = [];
|
|
if (isset($conf["conf-file"]) && file_exists($conf["conf-file"])) {
|
|
foreach(file($conf["conf-file"]) as $line) {
|
|
if (preg_match(
|
|
"/^dhcp-range=(?:(?:tag|set):(?<tag>$namePtn),)?(?<start_addr>$ipPtn),(?:(?<end_addr>$ipPtn)|$modesPtn)(?:,(?<netmask>$ipPtn)(?:,$ipPtn)?)?(?:,(?<lease_time>$timePtn|infinite))?$commentPtn$/",
|
|
$line, $range, PREG_UNMATCHED_AS_NULL
|
|
)) {
|
|
if (!isset($range["tag"])) $range["tag"] = "default";
|
|
if (!isset($ranges[$range["tag"]])) $ranges[$range["tag"]] = [];
|
|
$ranges[$range["tag"]]["dhcp-range"] = [
|
|
"start-addr" => $range["start_addr"],
|
|
"end-addr" => $range["end_addr"],
|
|
"netmask" => $range["netmask"],
|
|
"lease_time" => $range["lease_time"],
|
|
];
|
|
}
|
|
}
|
|
} |