16908 Commits

Author SHA1 Message Date
Stephan de Wit
c522ecac65 configd: extend log query mechanism with streaming capability 2024-06-21 12:31:54 +02:00
Franco Fichtner
21df35228c system: proper HA sync for new one-to-one NAT section 2024-06-20 16:13:23 +02:00
Franco Fichtner
cb8a6e1f9a firewall: fix style/indent issues 2024-06-20 09:29:30 +02:00
Franco Fichtner
faaf2b6698 firewall: misssed the serialize() call, convert to array earlier 2024-06-20 07:54:50 +02:00
Franco Fichtner
2073b7533e firewall: the NAT 1:1 reflection default was ignored 2024-06-19 21:26:13 +02:00
Franco Fichtner
6cbd3ca159 firewall: typo in "destination" migration for one-to-one NAT
PR: https://forum.opnsense.org/index.php?topic=41119.0
2024-06-19 20:07:35 +02:00
Franco Fichtner
5b73396f08 firewall: typo in one-to-one controller for external column
PR: https://forum.opnsense.org/index.php?topic=41119.0
2024-06-19 19:41:29 +02:00
Franco Fichtner
bde6566690 firewall: add 'natreflection' to form as well 2024-06-19 14:33:51 +02:00
Franco Fichtner
324f5351dd firewall: 'natreflection' rule attribute missed in migration
PR: https://forum.opnsense.org/index.php?topic=41122.0
2024-06-19 14:11:41 +02:00
Franco Fichtner
0aa2b491af
interfaces: change IPv6 requirements #7527 (#7538)
The origin of the link-local allow rule for DHCPv6 traffic is a bit weird and
the rule itself is probably dysfunctional, see pfsense/pfsense@dbcddabcdf
It has never been edited again and remains the same in OPNsense and pfSense
today.  Typically server client traffic exchanges exclusively over port 546 and
547 so the original one may have been a typo.

Now as witnessed by #7527 the server port could be random, but should
always come from link-local so we can merge both rules into one without
causing much problems.  Works fine locally on my network too.
2024-06-18 19:28:33 +02:00
Ad Schellevis
fbe5922bd9 Services: Kea DHCP [new]: Kea DHCPv4 / subnets - add description field. closes https://github.com/opnsense/core/issues/7540 2024-06-18 18:37:09 +02:00
Stephan de Wit
db6ea57d6c dashboard: add monit widget 2024-06-18 16:11:25 +02:00
Stephan de Wit
34cafe3e98 dashboard: allow widget locking 2024-06-14 14:44:32 +02:00
Franco Fichtner
105ecf9a5a system: fix backend log message
PR: https://forum.opnsense.org/index.php?topic=40950.0
2024-06-12 19:43:59 +02:00
Franco Fichtner
0487802a4b firmware: fix plist 2024-06-11 14:08:58 +02:00
Franco Fichtner
dac769feeb firmware: add 24.7 fingerprint 2024-06-11 12:50:49 +02:00
Stephan de Wit
5e2708b866 dashboard: system information missing licensing information 2024-06-10 11:35:30 +02:00
Franco Fichtner
a2ac1999f3 interfaces: force regeneration of link-local on spoofed MAC; closes #4430
While here make it possible to go back to the original MAC address by
providing the "hwaddr" field of ifconfig back to link command.

This operates under the constraint that the interface where the MAC
address changes is the same as the interface where IPv6 is running
so that we do not perform useless or problematic configuration.

The case for VLANs and parent MACs is probably also quite tricky, but
since it has never been considered before do not start now.
2024-06-10 09:23:18 +02:00
Franco Fichtner
50eff7d230 src: style sweep 2024-06-09 09:40:33 +02:00
Ad Schellevis
e66dbbd6eb Firewall: Diagnostics: Sessions - refactor pftop output, move search to controller layer and implement cache.
This commit should improve responsiveness of the sessions screen, since we needed to parse the full data in the previous version as well before returning it, this shouldn't be much slower on initial load.
Only risk is the size of the generated json output, by moving the label parsing we replicate less data and reduce total size.
2024-06-08 19:29:23 +02:00
Ad Schellevis
d496eea29c Interfaces: Diagnostics: ARP|NDP Table - enable cache to increase responsiveness 2024-06-08 18:27:44 +02:00
Ad Schellevis
ff0e772b5b mvc: improve searchRecordsetBase() to support the following features:
* update the recordset passed in $filter_funct, similar to what the model search supports
* optional $search_clauses to overwrite post `searchPhrase` in cases we want to filter these from the controller.
2024-06-07 19:22:00 +02:00
Stephan de Wit
a404e9c5a2 dashboard: toggle SSE persistent connections based on document visibility
While SSE promises to be properly multiplexed over HTTP/2, it seems browsers
still hit a hard limit when opening >6 connections. Since the streams are not
critical, it's fine to abstract the eventsource logic to the base widget class
where it manages open/closing connections based on tab visiblity.

If we need more than 6 parallel streams, we need to revamp the logic
to multiplex multiple event types in the backend ourselves, but this is not
necessary for now.
2024-06-07 16:28:04 +02:00
Stephan de Wit
341a4ce8c9 fix plist 2024-06-07 14:54:00 +02:00
Franco Fichtner
b955dbc251 interafces: track interface id #5630 2024-06-07 14:51:31 +02:00
Stephan de Wit
6db977e56a dashboard: thermal sensors requires close action 2024-06-07 13:05:57 +02:00
Stephan de Wit
0d895a3781 dashboard: typo in previous, also fix plist 2024-06-07 13:01:27 +02:00
Stephan de Wit
2d73903529 dashboard: add thermal sensors widget 2024-06-07 10:48:11 +00:00
Franco Fichtner
10f7043769 interfaces: present interface ID in hex
We have to revoke being able to set "random" here for now, but
it's not a huge issue since the fallback is now in the daemon.
The daemon also supports the full unsigned long long range but
does not allow hex input which means we are stuck with losing the
highest bit for now if we store in integer in PHP.

We could store a string, but then cannot verify it and it would
not be a hex value.  Meh.
2024-06-07 10:42:24 +02:00
Ad Schellevis
1ee618f961 mvc: move existing JsonKeyValueStoreField caches to configd (ref https://github.com/opnsense/core/issues/7515) 2024-06-06 19:48:13 +02:00
Ad Schellevis
a39add8b7f mvc:model:JsonKeyValueStoreField - support congfigd input without filestream, needed for https://github.com/opnsense/core/issues/7515
basically this just offers the option to remove the SourceFile reference and keep the configd action, the call overhead of using configd is quite low anyway and #7515 implements generic caching (which was the intend of the file handle)
2024-06-06 18:56:16 +02:00
Ad Schellevis
06d507704e configd - add optional cache_ttl for script_output actions, closes https://github.com/opnsense/core/issues/7515
Add a generic time based cache option for configd sscript action events, example usage:

[action]
command:/path/to/my/command
type:script_output
cache_ttl=5

cache_ttl is specified in seconds after last started execution.
2024-06-06 18:44:43 +02:00
Franco Fichtner
0dc1f2186a interfaces: fix typo in previous #5630 2024-06-06 14:44:08 +02:00
Franco Fichtner
bb041b9085 interfaces: fixed the PPPoE hiccup in dhcp6c, remove this remark 2024-06-06 13:51:59 +02:00
Franco Fichtner
6f2e844698 interfaces: allow ifid specification for #5630
For some reason it convinces me further that we should fix the
ifid default case with a fallback in dhcp6c because users will
not necessarily make that connection and just raise a bug report.
2024-06-06 11:26:43 +02:00
Stephan de Wit
a5a7b0887c interfaces: isset vs empty (https://github.com/opnsense/core/issues/7485) 2024-06-05 13:35:12 +02:00
Ad Schellevis
79ab5ec44a Firewall: Aliases / generic MVC - performance improvments, closes https://github.com/opnsense/core/issues/7509
fix regression in earlier commit.
2024-06-05 13:30:20 +02:00
Franco Fichtner
d786844dc4 interfaces: typo #5630 2024-06-05 08:52:24 +02:00
Franco Fichtner
54204b05b2 interfaces: avoid pluginctl giving out IPv4 info for non-interfaces 2024-06-05 08:50:57 +02:00
Franco Fichtner
0e543767d5 ui: prevent word break for top level menu items; closes #7511 2024-06-05 08:46:23 +02:00
Franco Fichtner
fc9d359f28 system: split pluginctl -X/-x for cleaner approach 2024-06-05 08:07:22 +02:00
Franco Fichtner
cda5801a74 interfaces: fix a typo 2024-06-05 07:48:03 +02:00
Franco Fichtner
51d75b6302 interfaces: follow up for #5630 2024-06-05 07:39:15 +02:00
Franco Fichtner
bc34a38c02 interfaces: bring optional prefix ID to advanced DHCPv6 WAN settings #5630 2024-06-04 21:51:36 +02:00
Ad Schellevis
edd7a00a39 Firewall: Aliases / generic MVC - performance improvments, for https://github.com/opnsense/core/issues/7509
refactor service name existence check as getservbyname() seems to be quite slow when large lists of entries need to be validated.
2024-06-04 21:05:57 +02:00
Franco Fichtner
112777fb75 src: style sweep 2024-06-04 17:33:51 +02:00
Ad Schellevis
930fa4e39f Firewall: Aliases / generic MVC - performance improvments, closes https://github.com/opnsense/core/issues/7509
This commit improves alias save/validate performance by fixing two main issues:

1) Faster unique constraint handling using caching, in order to prevent nested loops we should cache our results while still in the validation cycle.

This required an attribute to count validation cycles so we know the model could not have changed in between, getValidationSequence() helps to reach that goal

2) Alias::getByName() more optimistic caching, also prevening nested loops when locating aliases.

Although this is slighly more optimistic than the previous construction, in practice when validating data the set won't change, if there is a risk of mutations, we should flush the set using the "flush" parameter (same as before, but a bit more sensitive).
2024-06-04 16:23:11 +02:00
Franco Fichtner
e3856e03a3 system: address false positive scanner result by making the intention explicit
Discussed with: @adschellevis
2024-06-04 14:08:43 +02:00
Franco Fichtner
b5f8805aa3 mvc: style issue 2024-06-04 13:25:44 +02:00
Franco Fichtner
88d98c7674 monit: improve previous
Let the user decide on the password and use root as the default,
but then also allow these to be seen on the GUI and stop flapping
options when a header can do the same job now.
2024-06-04 12:39:13 +02:00