From ef9a2e9330a02c563aff08b73950774201def3f7 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Wed, 2 Feb 2022 09:07:50 +0100 Subject: [PATCH] dhcp: quick pass over prefixes.php to support non-clog finally --- src/opnsense/scripts/dhcp/prefixes.php | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/src/opnsense/scripts/dhcp/prefixes.php b/src/opnsense/scripts/dhcp/prefixes.php index 37e2b9e22..4919db2d0 100755 --- a/src/opnsense/scripts/dhcp/prefixes.php +++ b/src/opnsense/scripts/dhcp/prefixes.php @@ -8,7 +8,7 @@ if (!file_exists($leases_file)) { exit(1); } -$duid_arr = array(); +$duid_arr = []; foreach (file($leases_file) as $line) { if (preg_match("/^(ia-[np][ad])[ ]+\"(.*?)\"/i ", $line, $duidmatch)) { $type = $duidmatch[1]; @@ -51,7 +51,7 @@ foreach (file($leases_file) as $line) { } } -$routes = array(); +$routes = []; foreach ($duid_arr as $entry) { if ($entry['ia-pd'] != '') { $routes[$entry['ia-na']] = $entry['ia-pd']; @@ -61,37 +61,32 @@ foreach ($duid_arr as $entry) { if (count($routes) > 0) { foreach ($routes as $address => $prefix) { - mwexecf('/sbin/route delete -inet6 %s %s', array($prefix, $address), true); - mwexecf('/sbin/route add -inet6 %s %s', array($prefix, $address)); + mwexecf('/sbin/route delete -inet6 %s %s', [$prefix, $address], true); + mwexecf('/sbin/route add -inet6 %s %s', [$prefix, $address]); } } -/* get clog from dhcpd */ -$dhcpdlogfile = "/var/log/dhcpd.log"; -$clog = array(); -if (file_exists($dhcpdlogfile)) { - exec("clog $dhcpdlogfile", $clog, $ret); -} +exec('opnsense-log dhcpd 2> /null', $log, $ret); if ($ret > 0) { - $clog = array(); + $log = []; } -$expires = array(); -foreach ($clog as $line) { +$expires = []; + +foreach ($log as $line) { if (preg_match("/releases[ ]+prefix[ ]+([0-9a-f:]+\/[0-9]+)/i", $line, $expire)) { if (in_array($expire[1], $routes)) { continue; } $expires[$expire[1]] = $expire[1]; } - array_shift($clog); } if (count($expires) > 0) { foreach ($expires as $prefix) { if (isset($prefix['prefix'])) { - mwexecf('/sbin/route delete -inet6 %s', array($prefix['prefix']), true); + mwexecf('/sbin/route delete -inet6 %s', [$prefix['prefix']], true); } } }