* dhcp6: key lease map by type in addition to duid
* Update src/opnsense/scripts/dhcp/get_leases6.py
Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>
---------
Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>
In the old situation, one would need explicit pf rules on top of
this feature to make this work. With the removal of IPFW,
those rules are now enough to make the same happen.
Usually log lines start with a line ending, which means the first hit is always an empty line with reading things backwards.
This empty line has no relevance, but only indicates we're at the end of the file.
This commits stores the file starting position in all cases and ignores the output when we trying to yield the end of the file.
* Interfaces: Devices: Bridge - refactor to MVC for https://github.com/opnsense/core/issues/8353
* move existing properties to model which overlays existing config path
* add a simple wrapper script for [re]configuration which diffs and applies using the new _interfaces_bridge_configure() implementation
* Update src/opnsense/mvc/app/models/OPNsense/Interfaces/Bridge.xml
Co-authored-by: Franco Fichtner <franco@opnsense.org>
---------
Co-authored-by: Franco Fichtner <franco@opnsense.org>
In order to plan->do->act we need the current settings of the existing bridge, which is where legacy_interfaces_details() comes into play, which needs some additional parsing.
Next we can diff per type of setting and apply when changed.
Although this is highly uncommon, it's very annoying when the certificate path leads to an "Fatat error: Allowed memory size exhausted...".
If we do end in a loop (e.g. same ca already in the path), exit the calculation and return what we found sofar.
* dashboard: Use search link for certificates not in the trust model
* dashboard: Use toLocaleDateString to only display the expiry date but not the exact time.
* dashboard: Show the commonname of a certificate if it exists. Since certificates from external sources all have the same description, they would not be easily distinguished otherwise.
* Fix style
* dashboard: The value of hidden items must be changed to uuid to ensure uniqueness when hiding certificates
* dashboard: Simplify hiddenItemOptions value
We do this for different reasons, but mainly for code maintenance
and simplicity. It also fixes a few aquire/display bugs with
overlapping linl-local VIPs across interfaces, but not all.
* dnsmasq: Implement a light validation for option6 values as they require to be wrapped inside square brackets if they contain an IPv6 address
* dnsmasq: Improve the IPv6 bracket check, also handle multiple ipv6 addresses that are comma separated, use isIpv6Address()
* dnsmasq: Put IPv6 value check inline since dhcp-match and dhcp-option have been unified in master.
* Update src/opnsense/mvc/app/models/OPNsense/Dnsmasq/Dnsmasq.php
Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>
* Update src/opnsense/mvc/app/models/OPNsense/Dnsmasq/Dnsmasq.php
Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>
* dnsmasq: trim value directly
---------
Co-authored-by: Ad Schellevis <AdSchellevis@users.noreply.github.com>
The length and input isn't bound but when writing resolv.conf
we will adhere to the requirement mentioned in the man page:
The search list is currently limited to six domains
with a total of 256 characters.
We simply don't always know how many the system was being provided
with from the ISP so it is what it is.
This reverts commit de5dd5f5278edbae14bfa1bc76751ae360b834e0.
table-layout: auto; seems to do more harm than good, while originally
intended to improve out-of-bounds table row situations, it proves
to cause the same issue for long cell content as it now
ignores overflow:ellipsis.
* dnsmasq: Unify dhcp-option and dhcp-match in the same grid
Both dhcp-option and dhcp-match use almost the same fields in the form and concern the same options.
Unifying them could make sense to remove some duplicate code and potentially improving the UX.
* make plist and remove console log debug statement
In order to support both formats, we should break with the first succesful compile().
A workaround in the current version is to omit the {.} in the path expression.
This commit adds a toggle which skips config file generation for kea-dhcp4.conf and lets the user handle it manuallt, service startup and control stays in place while manually configured.
When manual mode is selected, all other options will be hidden in the form, which should help people understand (and read) what the purpose of this toggle is (advanced mode).
Unfortunately we can't prevent all overlaps, but at least we cab make it consistent with the rules being generated. loadAliasMap() overlays aliases on top of networks (and interface groups), swapping the order makes sure we thread them equally.