713 Commits

Author SHA1 Message Date
Ad Schellevis
d114b0ca41 System: High Availability: Settings: remove legacy page and switch acl/menu for https://github.com/opnsense/core/issues/7485 2024-05-30 13:19:42 +02:00
Stephan de Wit
a058e3021a pkg: fix plist 2024-05-30 11:01:46 +00:00
Ad Schellevis
9816b30a94 System: High Availability: Settings - refactor to MVC before pulling in new settings for https://github.com/opnsense/core/issues/7485 2024-05-30 11:59:24 +02:00
Franco Fichtner
80bba99c74 system: replace single-script backend call with a plugin configure hook
Been pondering about this during reviews for a while now.
2024-05-29 07:57:34 +02:00
Franco Fichtner
3d05730983 pkg: fix plist 2024-05-27 18:30:34 +02:00
Franco Fichtner
f1661f29ab src: style sweep 2024-05-23 10:55:16 +02:00
Stephan de Wit
8213afd810 dashboard: add firewall states widget 2024-05-22 11:38:23 +02:00
Ad Schellevis
136e8178d2 Services: DHCRelay - add logging into its own space 2024-05-21 10:02:45 +02:00
Ad Schellevis
030ed198a7 Revert "Services: Kea DHCP: Kea DHCPv4 - Add Custom Options tab to assign "vendor-encapsulated-options-space" options to subnets, for https://github.com/opnsense/core/pull/7361"
This reverts commit 3f184a695fdbcbe4071f61da54227a437da94bcd.
2024-05-15 18:21:34 +02:00
Stephan de Wit
2785cb641f dashboard: add firewall widget, change BaseTableWidget accordingly
The BaseTableWidget now contains some more rudimentary options to update
existing rows and sort on a specific column index.

The firewall widget counts events live as they happen and populates a
table in a larger view, or a doughnut chart in a smaller view as
data comes in.
2024-05-13 12:08:40 +02:00
Franco Fichtner
38dad806fb mvc: style sweep, plist 2024-05-13 10:42:29 +02:00
Ad Schellevis
56b3a44d5f legacy/csrf - move csrf check code from d1962f8ed5 into legacy scope.
The original intend was to be able to reuse the Csrf class, but as this requires direct access to the session object, it's likely not a good idea for the goals of https://github.com/opnsense/core/issues/6389
Since the legacy pages need a lock on session anyway,  keeping it doesn't make a difference.
2024-05-07 11:08:55 +02:00
Franco Fichtner
e5c4cb0ce8 src: style sweep 2024-05-06 09:04:09 +02:00
Ad Schellevis
f7999a7d56 mvc - replace Phalcon\Filter classes for simple SanitizeFilter wrapper implementing the filters we actually use.
for https://github.com/opnsense/core/issues/6389
2024-05-01 21:33:24 +02:00
Ad Schellevis
0dc6089f8a mvc - replace \Phalcon\Filter\Validation\Exception with \OPNsense\Base\ValidationException (both simple empty Exception classes).
for https://github.com/opnsense/core/issues/6389
2024-05-01 16:44:18 +02:00
Ad Schellevis
6dbdb2f23e mvc - replace Phalcon\Filter\Validation\Validator\Url with new native OPNsense\Base\Validators\Url validator
for https://github.com/opnsense/core/issues/6389
2024-05-01 14:25:58 +02:00
Ad Schellevis
9ab0edbc5f mvc - replace Phalcon\Filter\Validation\Validator\Regex with new native OPNsense\Base\Validators\Regex validator
for https://github.com/opnsense/core/issues/6389
2024-05-01 14:23:15 +02:00
Ad Schellevis
b10c17fff8 mvc - replace Phalcon\Filter\Validation\Validator\Email with new native OPNsense\Base\Validators\Email validator.
for https://github.com/opnsense/core/issues/6389
2024-05-01 14:07:14 +02:00
Ad Schellevis
c34b11d1f6 mvc - replace Phalcon\Filter\Validation\Validator\Numericality with new native OPNsense\Base\Validators\Numericality validator.
for https://github.com/opnsense/core/issues/6389
2024-05-01 13:51:47 +02:00
Ad Schellevis
5dd5426de7 mvc - replace Phalcon\Filter\Validation\Validator\PresenceOf with new native OPNsense\Base\Validators\PresenceOf validator.
for https://github.com/opnsense/core/issues/6389
2024-05-01 13:45:01 +02:00
Ad Schellevis
28c9b45687 mvc - replace Phalcon\Filter\Validation\Validator\InclusionIn with new native OPNsense\Base\Validators\InclusionIn validator.
for https://github.com/opnsense/core/issues/6389
2024-05-01 13:23:42 +02:00
Ad Schellevis
cbc01cb39c mvc: replace Phalcon\Config\Config usage for new and simplified OPNsense\Core\AppConfig class.
for https://github.com/opnsense/core/issues/6389
2024-04-30 17:51:12 +02:00
Stephan de Wit
ef9ef6ae74 dashboard: Disk widget 2024-04-30 16:28:10 +02:00
Ad Schellevis
d1962f8ed5 legacy/csrf - remove Phalcon\Encryption\Security\Random dependency for a simple Csrf class offering the same random url safe base64 encoded string. 2024-04-30 14:11:54 +02:00
Ad Schellevis
4489190d1f plist 2024-04-25 19:14:37 +02:00
Ad Schellevis
3f184a695f Services: Kea DHCP: Kea DHCPv4 - Add Custom Options tab to assign "vendor-encapsulated-options-space" options to subnets, for https://github.com/opnsense/core/pull/7361 2024-04-21 17:56:04 +02:00
Ad Schellevis
8f6499e33d plist 2024-04-21 13:56:45 +02:00
Stephan de Wit
5a21f67030 dashboard: traffic widget 2024-04-11 10:04:29 +02:00
Ad Schellevis
4b647fc3f3 interfaces: convert GRE configuration to MVC/API, closes https://github.com/opnsense/core/issues/7242
Final bits and pieces to move GRE tunnels to MVC, ACL, menu registration and align reconfigure action with GIF tunnels.
2024-04-04 18:16:59 +02:00
Stephan de Wit
d267e33de4 dashboard: system information widget
Minor restructuring of the BaseTableWidget as well
2024-04-04 16:48:11 +02:00
Ad Schellevis
52f16eba40 plist 2024-04-03 21:53:17 +02:00
Ad Schellevis
c4867a400b interfaces: convert GIF configuration to MVC/API , closes https://github.com/opnsense/core/issues/7241
cleanup _interfaces_gif_configure() a bit and mark the sections that should be removed in 24.7, the idea is to make sure routing is consistent between all interface types, which means the routing parts should go away. Existing configurations should stay functional, only when adding an aliasip no interface would be connected (which after final cleanup would be the default behavior anyway).

Ditch legacy pages and change menu registrations and acl's. This state should be safe for a minor release, so we can push the behavioral change in 24.7 by only removing the marked sections.
2024-04-02 17:12:12 +02:00
Franco Fichtner
f7ac887d90 system: move authgui.inc to appropriate location
Auth and gui were already split but stored side by side but it makes
no sense for authgui to be used anywhere other than the legacy GUI.
2024-04-02 08:33:30 +02:00
Ad Schellevis
d86da4dc47 plist-fix 2024-04-01 19:50:10 +02:00
Franco Fichtner
768d900e8b pkg: fix plist 2024-03-24 21:13:48 +01:00
Stephan de Wit
1d593fe984 dashboard: add CPU Usage widget
Also allow for each widget to override the resize handles in case
they should be more restrictive in terms of dimensions.
2024-03-22 15:59:40 +01:00
Stephan de Wit
89d4af5a52 configd: extend streaming support for blocking processes
This allows for hooking into the EventSource mechanism on the client side,
enabling server-sent events without busylooping on the backend.
This will reduce stateless network chatter and eliminates the need for
polling and many other benefits.

Continuation of f25e1214dc,
which disables buffering on the webserver side. This change in particular also
removes implicit buffering on the configd side.

As an example, the polling of CPU usage is included with a backend script here.
Granted, this could easily be replaced by `iostat -w 1 cpu | egrep -v "tty|tin" --line-buffered`,
but the client will eventually need some form of per-event formatting which is already
being handled in this example. When implementing these types of scripts, make sure
that all output that encapsulates a single event is flushed at all times to prevent
OS buffering. A new controller (without any consumers) is also implemented to showcase
the passthrough mechanism on the controller side.
2024-03-22 10:29:44 +01:00
Stephan de Wit
419fec650f
Dashboard: boilerplate for new widgets (#7328) 2024-03-20 11:44:07 +01:00
Ad Schellevis
3210c15676 System: Trust: Authorities - call system_trust_configure() via configd on authority changes and fix a regression linking authorities to their parent and certificates (https://github.com/opnsense/core/issues/7248) 2024-03-19 13:53:38 +01:00
Ad Schellevis
27c66f665f plist 2024-03-17 13:37:34 +01:00
Franco Fichtner
53e5a4f7d7 src: style sweep and plist fix 2024-03-14 20:32:36 +01:00
Franco Fichtner
ad5fed3c4d dhcrelay: migrate IPv6 data, consolidation cleanups #6983
Menu, ACL and XMLRPC wer consolidated into the IPv4 flag.  IPv6 is
no longer functional and operates from the shared reimplementation
now.  Syslog doesn't work on OpenBSD dhcrelay especially since we
start it with -d so it tries to spam to stderr which is ignored by
daemon -f to background it properly with a pid file (it's a long
story, don't ask).
2024-03-13 18:00:31 +01:00
Franco Fichtner
53a95b0190 dhcrelay: split out plugin file, move some more around #6983 2024-03-13 16:56:44 +01:00
Franco Fichtner
a38b887e29 dhcrelay: finish v4 and remove legacy page #6983 2024-03-13 08:51:29 +01:00
Franco Fichtner
895edd315f mvc: style sweep 2024-03-12 20:22:52 +01:00
Franco Fichtner
672e8ba9e1 dhcrelay: functional replacement #6983
Since we are not ISC we can make a new menu spot.  Keep the legacy
reconfiguration spot as we end up building a complex command line
to run and this doesn't have to go into a template that just stuffs
args into a variable to start it, which then requires and rc.d file.

Though we want to move it out of dhcpd.inc at some point.

Apparently the new MVC page is missing an apply button.  ;)
2024-03-12 14:12:59 +01:00
Franco Fichtner
301a9b7f8e dhcrelay: first bits of GUI and tweaks along the way 2024-03-12 11:00:59 +01:00
Franco Fichtner
7d80f955de dhcp: DHCRelay model migration #6983
It would be nice to have both IPv4 and IPv6 in here but it may be
less desirable in practice.  For now use a shared namespace and
only migrate IPv4 switching the binary and breaking everything
in the process.
2024-03-12 11:00:59 +01:00
Franco Fichtner
8010030d10 src: style sweep/plist 2024-03-12 06:51:33 +01:00
Franco Fichtner
4b1bc0c0f3 pkg: fix plist 2024-03-08 08:20:20 +01:00