shell: rewite timeout() using safe execution functions
This now works like opnsense-importer does it except for the print
which still counts here instead of showing a character per second.
Instead of returning the character we return the error if a key was
pressed, i.e. reversed to signal that timeout() was an actual timeout
or interrupted.
system: replace exec() in config encrypt/decrypt #9325
Although these are very safe the calls are much more portable now
and this was also the last exec() in the MVC code. Plus, Shell
class was already being used elsewhere here.
(cherry picked from commit ae4bac8bada187005dfd0cd186b891ffb02ffdfb)
dnsmasq: Replace inline onclick handlers with proper DOM event binding in leases grid (#9415)
(cherry picked from commit 566d264a5becfafffbb0c5da6e3bdf658940af0c)
Config - ditch isArraySequential() in favor of the new array_is_list() introduced in PHP 8.1. closes https://github.com/opnsense/core/pull/9424
This impacts $config usage in legacy code, a before and after comparison of the $config output shows no difference on a larger config file.
As mentioned by @swhite2, the performance of the internal check is much better than the one we're replacing now.
closes https://github.com/opnsense/core/pull/9424
(cherry picked from commit 7ee3b2c516590bae918532ba406960ef2bf426db)
unbound: notify user if a blocklist reset is required
This isn't perfect, as it can potentially take a while
for unbound to notice the change, keeping the notification
around longer than necessary. Additionally, this should be
a banner as well, but the banner isn't clickable in the current
state and the banner scope should ideally be separated from the
notification scope. To be continued.
(cherry picked from commit 41f9b3250ffd510287190f4e6ad9d6af4f7184d3)