* dashboard: Construct Wireguard.js row ID from if+public-key to ensure uniqueness when public keys are reused.
* dashboard: Wireguard.js use concatenated string for uniqueId
This always bugged me: 'newwanip_map' is called when e.g. DHCP is
done but here we just do it async to start something. This doesn't
make sense, because eventually it triggers twice.
What rc.reload_all and setports.php do is call 'local' and I think
that makes sense.
Add RRD package with a simple factory class and a basic construct to define different rrd output types we support.
This package contains the following:
* RRD/Types -- Output definitions, responsible for generating RRD structures and feeding data
* RRD/Stats -- Statistics gathering classes
* Factory -- binds types and statistics together.
On my end on a simple test this is roughly 40% faster than running /var/db/rrd/updaterrd.sh, which makes caching of metadata (config access) less relevant.
The new script should be able to replace all existing rrd cruft and supports a debug mode to find discrepanties between defined outputs in types and collected data in stats.
```
Usage: updaterrd.php [-h] [-d]
-d debug mode, output errors to stdout
```
Everything has been converted and plugins do not ship with a
"vpn" event. "newwanip" is similar and the plugins have been
ensured to be moved to the new one in 24.7.3 already.
Although we recommend using matching CN's and usernames, it is possible to share a certificate. Since the datafeed already contains the username, let's add the field to the grid.
Unify the situation for 'ppp_port' vs 'ports' use by using the latter
as is. One of the issues of this page always was inconsistency after
all. Then also zap the validation that causes the changes not to be
accepted. In theory it's posted anyway but that has been the case for
PPPoE/L2TP/PPTP since the fork.
* unbound: discard-timeout
Signed-off-by: Nigel Jones <nigel.l.jones+git@gmail.com>
* Update src/opnsense/mvc/app/models/OPNsense/Unbound/Unbound.xml
Co-authored-by: Franco Fichtner <franco@lastsummer.de>
* unbound: update field help text
---------
Signed-off-by: Nigel Jones <nigel.l.jones+git@gmail.com>
Co-authored-by: Franco Fichtner <franco@lastsummer.de>
Co-authored-by: Stephan de Wit <stephan.de.wit@deciso.com>
Parsing the persisted dashboard requires decoding it, which by extension means we don't need to encode it anymore when returning the dashboard. In all cases, this commit now makes sure that dashboard is filtered according to access rights.
While here, invalid input can be filtered out partly by check the result of json_decode(), so do this when saving the widgets.
There appear to be no callers in plugins. We could argue
that the vpn/vpn_map event isn't really needed as it brings
just OpenVPN, IPsec and WireGuard to the table, but we can
decide on this later.