interfaces: avoid forced reloads when PDINFO is not set #9521
PDINFO, the variable we get from dhcp6c has only reply packet
context and may not be correct when it's renewing a NAINFO for
example. Ignore the event when not set and add more logging
for the specific case to see if the PPPoE loop is stopped with
that approach.
It may not be stopped since the possibility for a shift of the
PD is still there, but that would mean we're not allowed to
reload a connected PPPoE for specifc reasons we need to find
out.
PR: https://forum.opnsense.org/index.php?topic=50505.0
(cherry picked from commit 3248b4d2315f8e0efd32b5c4c16654cb31c60e32)
interfaces: avoid forced reloads when PDINFO is not set #9521
PDINFO, the variable we get from dhcp6c has only reply packet
context and may not be correct when it's renewing a NAINFO for
example. Ignore the event when not set and add more logging
for the specific case to see if the PPPoE loop is stopped with
that approach.
It may not be stopped since the possibility for a shift of the
PD is still there, but that would mean we're not allowed to
reload a connected PPPoE for specifc reasons we need to find
out.
PR: https://forum.opnsense.org/index.php?topic=50505.0
Firewall: Aliases - expire geoip aliases when there's either no database installed or its newer than the alias contents populated. closes https://github.com/opnsense/core/issues/9374
In the long run we should probably refactor the alias class so different types can have their own implementations, but this has a lot more impact than injecting a specific expire() implementation for geoip information at its current spot.
The additional advantage of this change is it will update aliases before their TTL expires when the geoip database is newer than the alias content.
(cherry picked from commit 7bb40089867079e75857823d26ecdee5b12075d8)
mvc: add ChangeCase support to ProtocolField for DNAT special case (#9643)
Use the ChangeCase BaseField extension because it's already being tested
and add more tests and safeguards so that the cache knows which case is
going on (also if 'any' needs to be used).
The 'any' value is a bit tricky here. Force it to lowercase in all cases
since it wasn't uppercased before either.
Also fix the display of anti-lockout protocol for consistency.
(cherry picked from commit 33e296120f1a453a1235dbc403f89efb2e9cd996)
interfaces: generalise the dhcp6c_script using the new IFNAME variable #7647
The file was conceptually created in d36f0f4f62557 and before was a single
command line script... so add appropriate copyrights from that time onward.
Many thanks to Martin for pinoeering this back in the day!
interfaces: show the prefix shift in the log message
Move the other force message to the respective if which is more or
less what we had before. This is important for making clear what
the impact of #9521 to renewals actually is.
interfaces: missed script path via @cm-rudolph
interfaces: multi-dhcp6c support and custom PD association #7647
This splits off rtsold and dhcp6c into separate processes
which frees us from the restrictions of faked iterative IDs
for PD associations. For NA we simply default to 0 now.
I'm not entirely sure why we settled for a single deamon of
dhcp6c back in the day, but there are certianly downsides to
it and I don't see something that wasn't fixed in the meantime
that makes this not work.
Add two debugging files which still need to be steered via the
debug setting.
interfaces: looks like an oversight in validation
In the configuration there only exists "track6", but for "idassoc6" we
were looking for that instead which PHP could confuse with a "0" value
when empty.
PR: https://forum.opnsense.org/index.php?topic=50488.0
Firewall: Aliases - expire geoip aliases when there's either no database installed or its newer than the alias contents populated. closes https://github.com/opnsense/core/issues/9374
In the long run we should probably refactor the alias class so different types can have their own implementations, but this has a lot more impact than injecting a specific expire() implementation for geoip information at its current spot.
The additional advantage of this change is it will update aliases before their TTL expires when the geoip database is newer than the alias content.
mvc: add ChangeCase support to ProtocolField for DNAT special case (#9643)
Use the ChangeCase BaseField extension because it's already being tested
and add more tests and safeguards so that the cache knows which case is
going on (also if 'any' needs to be used).
The 'any' value is a bit tricky here. Force it to lowercase in all cases
since it wasn't uppercased before either.
Also fix the display of anti-lockout protocol for consistency.