405 Commits

Author SHA1 Message Date
Franco Fichtner
e6101f04b5 pkg: make a note about nickname changes 2023-07-28 14:03:51 +02:00
Franco Fichtner
4fc8865b8f pkg: shorten previous
I doubt we have much difference between supported architectures.
2023-07-26 17:43:25 +02:00
Christopher SHEN
7e8179f827 Makefile: add packages to CORE_DEPENDS_aarch64
The four packages including py${CORE_PYTHON}-duckdb,  py${CORE_PYTHON}-numpy, py${CORE_PYTHON}-pandas, and suricata-devel, can be built on aarch64.
2023-07-26 17:38:51 +02:00
Ad Schellevis
58b1ec1ea6 System / Auth / Radius - add MSCHAPv2 support using Crypt_CHAP_MSv2(). As MSCHAPv1 doesn't seem to be frequently used and we currently don't have a server setup for it either, we limit the support to v2 only.
Implemented using the examples in https://github.com/LawnGnome/php-radius/blob/master/examples/radius-auth.php, requires 818fa8e936 for CHAP.php to funciton on php 8.1
2023-06-18 17:19:45 +02:00
Franco Fichtner
271525f00b pkg: these too 2023-05-10 16:56:23 +02:00
Franco Fichtner
5f7984444f pkg: duckdb for other arches not so easy
PR: https://github.com/opnsense/tools/issues/350
2023-05-10 14:17:50 +02:00
Franco Fichtner
c7f4c8f38b pkg: embed metadata as annotations #6374
Allows us to (r)query for info such as product_tier.
2023-04-26 08:52:43 +02:00
Franco Fichtner
3518119bbe pkg: sneak an extra space into mtod when appropriate; closes #6479 2023-04-12 08:40:22 +02:00
Franco Fichtner
d60bf5ff9e make: stray newline 2023-03-14 09:31:16 +01:00
Franco Fichtner
09b2bec389 pkg: remove CORE_FLAVOUR handling 2023-02-07 09:22:33 +01:00
Franco Fichtner
51f97e176e firmware: start phasing out LibreSSL glue
No longer able to select it from the GUI.  CORE_FLAVOUR
still exists but can be removed safely later on.
2023-01-27 12:53:48 +01:00
Franco Fichtner
c8569241cb pkg: move to 23.1 as default 2023-01-27 12:52:39 +01:00
Franco Fichtner
e36d4903c0 pkg: happy new year! 2023-01-09 11:18:19 +01:00
Franco Fichtner
afa13df34d pkg: add new dependencies 2022-12-15 13:15:01 +01:00
Franco Fichtner
7607a6d968 system: for consistency add -c argument (the default) to pluginctl invokes
Some facilities might overlap in naming so make it less confusing from
the internal scripting side. "webproxy" had me doubting for a second.
2022-08-31 09:19:01 +02:00
Franco Fichtner
1fa0cb3e2d firmware: time for 23.1 development :) 2022-07-26 11:38:44 +02:00
Franco Fichtner
52d91d0417 make: remove WANTS/WANT magic
The packages use is too explicit so simply check for installed
debug plugin and hope for the best.
2022-07-22 08:42:09 +02:00
Franco Fichtner
856574bbef dhcp: use a simple periodic update for now; closes #5876
Gets rid of package dependency which for dhcpleases6 simply
listens on the DHCPD lease file and runs the prefix.php command
unconditionally.

For now emulate this by issuing the command every 60 seconds
which can be adjusted later if someone complains, but seeing
how many bugs this script has had vs. how many people noticed
it (basically none) I doult this will have much impact overall.
2022-07-20 11:37:18 +02:00
Franco Fichtner
bad28afe70 system: render interfaces in convert_config() #5768
This brings it in line with migrations although both hinge on
the idea that rc.configure_firmware is called to execute this
code.  Both need a better integration but bringing them to the
same level seems to make the most sense.

After reboot the config is in a consistent state now too...

Remove previous plugins_interfaces() call and always use full
path to pluginctl like most spots already do.
2022-07-12 20:41:52 +02:00
Franco Fichtner
ef57b57ee5 pkg: sort 2022-07-08 08:37:00 +02:00
Ad Schellevis
becf4e9342 VPN: IPsec: Status Overview - cleanup, remove vici library in favour of port package 2022-07-05 11:11:53 +02:00
Franco Fichtner
7eadf5f447 openvpn: hardcode the RFC 7919 DH parameter #4722
This allows us to remove all DH handling remnants.  If people
want to use a separate content they will have to let us know,
but it seems unlikely.  The only impact seems to be a security
bump from 2k to 4k default.
2022-06-29 20:04:07 +02:00
Franco Fichtner
b9da60d15b pkg: simplify 2022-06-28 12:39:17 +02:00
Franco Fichtner
2b2da5f23d make: omit pkg-create -f default in case it changes later 2022-06-08 11:15:59 +02:00
Franco Fichtner
60c447f590 make: pkg 1.17 has a "unified suffix" 2022-05-09 08:31:31 +02:00
Stephan de Wit
cfd4b7635f
Phalcon5 migration: provide compatibility layer between v4 and v5 (#5711)
* phalcon5: update namespaces

* phalcon5 Autoload: rename registerDirs() to setDirectories()

* phalcon5: remove trailing slash

* phalcon5: default to php74-phalcon

* phalcon5: provide 4/5 compatibility layer except for AbstractValidator

* MVC - Phalcon 5 migration and options to lose dependency of phalcon validation classes.

Since Validation() in 5 moves to Filter\Validation (https://docs.phalcon.io/5.0/en/upgrade#general-notes) and the class is used in strict parameter passing,
it will be difficult to import a situation which works both on 4 and 5.

To prevent future issues, but keep the current situation functional with minimal changes, we wrapped Validation() into a class of our own. When validators inherit from BaseValidator, these are assumed to
be less strict and bound to our own handling. Phalcon validations will follow the old path for now.

Migrating existing validations on our end, should be as simple as changing the following lines:

-use Phalcon\Validation\AbstractValidator;
-use Phalcon\Validation\ValidatorInterface;
-use Phalcon\Validation;
+use OPNsense\Base\BaseValidator;

-class CallbackValidator extends AbstractValidator implements ValidatorInterface
+class CallbackValidator extends BaseValidator

-    public function validate(Validation $validator, $attribute): bool
+    public function validate($validator, $attribute): bool

Todo: choose the "correct" Validation() based on phalcon version.

* phalcon5: complete migration to compatibility layer.

uses bc881b9c11 to remove the need
for AbstractValidator and Validator(Interface).

This commit changes the relevant includes and provides some changes to make the unit tests
run correctly.

* MVC - Phalcon 5 migration and options to lose dependency of phalcon validation classes. part duex

Although our previous strategy should work according to how bind() and validation() are being implemented (https://github.com/phalcon/cphalcon/blob/4.2.x/phalcon/Validation.zep),
in reality it seems they aren't the same. Our previous attempt failed some validations (such as booleans) for no valid reasons.

Long term we should remove the phalcon dependency as these effects are highly unpredictable.

phalcon5: update Validation class to now pick the right Phalcon Validation based on version

* MVC - Phalcon 5 migration and options to lose dependency of phalcon validation classes.

Minor regression in previous commit, performValidation()'s return type didn't match. Ideally we would rather switch to plain array's, but since performValidation()
is used in multiple areas (including plugins) we better opt for compatiblity now.

ref  https://github.com/opnsense/core/pull/5711

* phalcon5: switch back to using count() on Messages object, adjust unit tests as needed

See 6814f32755 as to why
this is the case.

* phalcon5: remove PhalconGenerator and references, use checked-in files instead

* Update Makefile

Co-authored-by: Franco Fichtner <franco@opnsense.org>

Co-authored-by: Ad Schellevis <ad@opnsense.org>
Co-authored-by: Franco Fichtner <franco@opnsense.org>
2022-04-20 10:05:26 +02:00
Franco Fichtner
6d1d52b3db pkg: add glue to change phalcon version
Switch to version 5:

    make upgrade CORE_PHALCON=

Version 4 is used by default on PHP 7.4 and only version 5 can be
used with PHP 8.0.
2022-04-06 07:55:31 +02:00
Franco Fichtner
0aa6a10a21 make: compare hash as well on "upgrade"
Helps with development and git commit --amend.
2022-04-05 07:45:22 +02:00
Franco Fichtner
c0fdff1427 pkg: phalcon 5 test as well 2022-04-04 15:02:22 +02:00
Franco Fichtner
c3ae8435b7 pkg: dependency glue for PHP 8
json/openssl extensions moved to core package php80
2022-04-04 13:30:58 +02:00
Franco Fichtner
79df42229b make: convenience target to test migrations 2022-03-25 07:45:29 +01:00
Franco Fichtner
5205dd9da7 make: create dir before mfc 2022-03-22 11:20:01 +01:00
Franco Fichtner
b5619fef39 pkg: after having dnspython break our initial 21.7.8 builds
Now we circle back from dnspython2 to dnspython "just because".
This is too tedious to even complain about.  All it does is
wreck opnsense-revert usage... congrats to all involved.
2022-03-10 19:50:49 +01:00
Franco Fichtner
94db2d45eb make: softcode the use of branches to ease backporting 2022-03-02 10:48:28 +01:00
Franco Fichtner
2790f3ee63 make: dependency, not target 2022-03-01 08:40:07 +01:00
Franco Fichtner
07a012bb55 make: diff for tag if requested 2022-02-28 10:56:06 +01:00
Franco Fichtner
35c53f1010 make: also add a push helper 2022-02-28 10:35:31 +01:00
Franco Fichtner
2e7a8e438d make: add "log" target 2022-02-24 09:09:02 +01:00
Franco Fichtner
c139e03be7 pkg: allow alpha versioning for development 2022-02-02 07:55:48 +01:00
Franco Fichtner
b6ca1be13a firmware: no need to hint at upgrades anymore 2022-02-01 14:22:58 +01:00
Franco Fichtner
208be46ce2 pkg: happy new year! 2022-01-03 11:21:26 +01:00
Franco Fichtner
e4d5478662 pkg: avoid upgrades if already done, use VERSIONBIN 2021-12-21 12:07:37 +01:00
Franco Fichtner
8250ad50c3 Revert "pkg: suricata is now the same as suricata-devel"
This reverts commit d29b652cc01186b6b8d05aac998cfe3053bfb4af.

pkg-upgrade ignores this and upgrading the core package which
is suboptimal at the very least.
2021-11-23 15:25:47 +01:00
Franco Fichtner
ebfdeecdfe make: populate CORE_MAKE command with proper env on stepping stones
`make upgrade' could forget what version it was running in the first place.
2021-11-15 19:37:01 +01:00
Franco Fichtner
d29b652cc0 pkg: suricata is now the same as suricata-devel
We keep the port in order to test upcoming version 7 but for now
steer away from pulling it as a core dependency so we don't have
to update both.
2021-11-15 14:23:57 +01:00
Franco Fichtner
c4918b4c99 firmware: change CORE_ALTABI to taret ABI detection for #5144 2021-11-09 09:12:24 +01:00
Ad Schellevis
b3e3391943 Syslog - remove clog support
remove all remnants from syslogd and circular log support excluding support from the log readers. When a user upgrades and was using clog, the old files remain and are still readable from the ui, new entries are generated into our syslog-ng directory structure.

for https://github.com/opnsense/core/issues/5337
2021-11-05 21:17:35 +01:00
Franco Fichtner
14b46feee2 make: use slight modify for checking all potential files 2021-10-05 08:45:43 +02:00
Ad Schellevis
76b8ae4490 Firewall / Aliases - improve resolve performance by implementing async dns lookups. ref https://github.com/opnsense/core/issues/5117
This will need a new version of py-dnspython (py-dnspython2 in ports) for dns.asyncresolver support. Some additional log messages have been added to gain more insights into the resolving process via the general log.
Intermediate results aren't saved to disk anymore, which also simplifies the resolve() function in the Alias class. An address parser can queue hostname lookups for later retrieval (see _parse_address()) so we can batch process the list of hostnames to be collected.
2021-08-19 15:53:25 +02:00
Franco Fichtner
b91f9077f6 make: fix plist check on FreeBSD 13 2021-08-19 12:57:06 +02:00