1301 Commits

Author SHA1 Message Date
Gareth Owen
a3d5cbcc7a unbound: Fix PTR records for DHCP endpoints
* Add PTR records for DHCP endpoints in the correct format
* Delete PTR records when A records are deleted
* Use bulk add/remove requests to unbound-control to improve performance

Fixes #4597
2021-02-27 17:06:23 -05:00
kulikov-a
8953d038e5
rulecache.py: make manual rule status boolean (#4758) 2021-02-26 14:02:38 +01:00
Ad Schellevis
2696e42d3a Service / Intrusion Detection / Policies: type error in 'enabled' field (bool vs str), closes https://github.com/opnsense/core/issues/4753 2021-02-25 20:02:59 +01:00
Franco Fichtner
70f856bf2f firmware: emit api version string, second major iteration already #4500 2021-02-25 13:59:35 +01:00
Ad Schellevis
43b50ed086 Netflow: prevent crash when attributes missing, closes https://github.com/opnsense/core/issues/4751 2021-02-25 12:08:46 +01:00
Ad Schellevis
277ffb6ac5 Reporting / Traffic: change api output to combined in/out per row and change user interface to handle new format. closes https://github.com/opnsense/core/issues/4724 2021-02-23 16:21:25 +01:00
Franco Fichtner
6368a2bb6d firmware: that wasn't complete but now it is #4718 2021-02-23 09:10:43 +01:00
Gareth Owen
d344d0a773
Unbound: Fix bad dereference when DHCP lease expires (#4742)
Move deletion of dhcp cache info when the lease expires to after the
last reference to the cache information.

Fixes #4741
2021-02-23 08:53:41 +01:00
Franco Fichtner
a4ae9b3918 firmware: use launcher trick for these as well; closes #4718
So we get a message that the system is doing something else instead
of no message at all.
2021-02-23 08:49:12 +01:00
Ad Schellevis
13c4f8eab6 Reporting / Traffic: aggregate iftop results for https://github.com/opnsense/core/issues/4724
This is more or less a proof of concept, we probably best change the api endpoint data as well to push in/out in the same record so we can also ship the details underneath for those interested.
2021-02-21 13:23:13 +01:00
Gareth Owen
1b530ff38f
Unbound: Handle DHCP client expiring and returning (#4727)
Cleanup local data cache when a DHCP endpoint expires, so that it is
kept in sync with dynamic changes.  This ensures that if an expired DHCP
endpoint returns and is assigned the same IP address the local cache is
correct and doesn't block the entry being dynamically re-added to Unbound.

Also don't cache the blacklist entries, which aren't needed to manage
the DHCP DNS entries. There can easily be 1M+ blacklist entries, so
ignoring these improves startup speed and reduces memory footprint

Fixes #4714
2021-02-21 11:42:11 +01:00
Ad Schellevis
dd2231ee54 Interfaces / Diagnostics / arp,ndp table: slow manufacturer lookups, likely after upgrading netaddr to 0.8.0. for https://github.com/opnsense/core/issues/4666 2021-02-20 00:43:04 +01:00
Ad Schellevis
88e463c913 Netflow: prevent crash when interface number is missing. for https://github.com/opnsense/plugins/issues/2241 2021-02-19 23:16:50 +01:00
Franco Fichtner
889e24c965 firwarme: abstract LOCKFILE away
Now we only deal with LOCKFILE in the firmware scripts folder.
2021-02-19 13:20:48 +01:00
Franco Fichtner
99944f462e firmware: hide LOCKFILE behind small read script
One old bit of compat glue can kick the bucket as well.
2021-02-19 11:52:20 +01:00
Franco Fichtner
38b0e8ff6c firmware: get rid of old naming convention; closes #4718 2021-02-19 11:43:03 +01:00
Franco Fichtner
eb6cbc0164 firmware: single spot for update/upgrade code #4718 2021-02-19 11:29:38 +01:00
Franco Fichtner
dc883ebbba firmware: moving ahead with opnsense-update change for 21.1.2 2021-02-19 11:05:06 +01:00
Ad Schellevis
aa167350b2 System / Routes / Status: missing inet in route delete. closes https://github.com/opnsense/core/issues/4721 2021-02-19 09:44:01 +01:00
Franco Fichtner
8c2ea1f344 firmware: for core that works, for crypto it does not
Since the fetch blocks some time and is not completely reliable
it doesn't really matter if we have it or not.

While here remove a bit of cruft.
2021-02-18 10:24:04 +01:00
Franco Fichtner
c05c0411cb firmware: small refactor for neatness 2021-02-18 09:02:52 +01:00
Franco Fichtner
2caeb508fc firmware: flush line for new package 2021-02-17 15:14:32 +01:00
Franco Fichtner
1e4aac005a firmware: use cannonical -p and -t update
opnsense-update can now handle it correctly and we save another
invoke from here.
2021-02-17 15:03:23 +01:00
Franco Fichtner
e321ab47a6 firmware: no, not going to fix this mess #4500 2021-02-17 14:02:04 +01:00
Franco Fichtner
8a6642c862 firmware: lock pkg when not upgrading it
It can be snatched from any mirror if given which is very
bad when FreeBSD repo is enabled.  A simple pkg-install
will pull in pkg and break the system.
2021-02-17 13:52:10 +01:00
Franco Fichtner
a55afaac12 firmware: add crypto package to health check #4500 2021-02-17 13:33:20 +01:00
Franco Fichtner
31ca550304 firmware: correct timestamp to reflect date(1) output 2021-02-17 09:47:01 +01:00
Franco Fichtner
2520f59669 firmwware: slight code updates for check #4500 2021-02-16 16:11:49 +01:00
Franco Fichtner
58b96bc114 firmware: third and last batch #4500 2021-02-16 15:59:37 +01:00
Franco Fichtner
d44a148899 firmware: second batch in check script #4500 2021-02-16 15:52:58 +01:00
Franco Fichtner
9a08ea91e9 firmware: settle on 4 spaces for indent, first batch, minor removals #4500 2021-02-16 15:44:04 +01:00
Franco Fichtner
0f1484b3a2 firmware: strict install policy using php version_compare() #4500
We have to see how this holds up in practice.  Reinstall was considered
as well for further protection but that might be even trickier depending
on what locking and version tricks the user did to their install to
retain a particular (working) state.
2021-02-16 15:08:26 +01:00
Franco Fichtner
e4392fb854 firmware: pin critical updates to our repo #4500
While testing pkg was snatched from FreeBSD mirror, which isn't
advisable (nevermind that FreeBSD mirror was enabled in the first
place).

Do the same for the release type shift to avoid pivoting towards
third party repos for any reason whatsoever.
2021-02-16 15:03:56 +01:00
Franco Fichtner
9a01e5399d firmware: UX and display tweaks 2021-02-16 10:31:04 +01:00
Franco Fichtner
31cefec61b firmware: when config.xml looks like a factory reset register plugins/release #4500
This way the build can do all sorts of funny things and we will end up
with a consistent config.xml after boot.  For people restoring other
config.xml that is not the case but in this scenario the user is likely
aware of what he or she is doing.
2021-02-16 10:05:27 +01:00
Franco Fichtner
4cf0720b66 firmware: merge updates and release type result parsing #4500
With this we get as much visibility as pkg can offer us.  Merge
some code in the process as the release type shift is nothing
special anymore.
2021-02-16 00:40:20 +01:00
Franco Fichtner
e283a5942d firmware: UX and JS changes #4500 2021-02-15 19:52:15 +01:00
Franco Fichtner
8d7ce38678 firmware: add upgrade sets to status if found and required #4500 2021-02-15 13:51:54 +01:00
Franco Fichtner
2ecd584c9a firmware: firmware-* files private to check.sh #4500
Remove unused JS while here.
2021-02-15 13:07:00 +01:00
Franco Fichtner
52594df3e3 firmware: simplify upgrade procedure #4500 2021-02-15 12:05:16 +01:00
Franco Fichtner
14416172b1 firmware: switch to new update procedure #4500 2021-02-15 11:33:44 +01:00
Franco Fichtner
9fb0b8d677 firmware: remove compat code from plugin register script #4500
We always assume metadata is present otherwise we end up
with undefined behaviour.
2021-02-15 09:15:45 +01:00
Franco Fichtner
88aa77ecda firmware: assorted changes for #4500
o Do not load the text changelog for the GUI as it is unused
o Rename product_name to product_id for consistency
o Always hint at product_target so correct changelog is displayed
o Rename type to target for consistency
o Add distinguishable labels to changelog view actions
o Return JSON when argument is given for easier debug
2021-02-14 13:50:14 +01:00
Ad Schellevis
a4f48f7a91 Services / Web proxy - possible ownership issue on template directory.
It's probably better to chown the error pages directory, just like we for other squid related directories, to prevent ownership issues. Although this doesn't seem to go wrong, the files are intended for squid.

closes https://github.com/opnsense/core/issues/4703
2021-02-12 21:11:26 +01:00
Franco Fichtner
64640958df firmware: for check also figure out release type shift #4500 2021-02-12 21:58:05 +01:00
Franco Fichtner
65f212b537 firmware: bubble this down, more to come #4500 2021-02-12 21:41:22 +01:00
Franco Fichtner
9679c969f6 firmware: remove type.install, bring code closer together #4500 2021-02-12 19:59:48 +01:00
Franco Fichtner
10eab0ae68 firmware: get rid of firmware type name #4500
From the user side no functional changes.  What this can do
now is decide whether to update or do a release type transition.
In most cases it is safer to get all updates first and then
do a release type transition afterwards.  This can follow when
firmware type install can be shelved.
2021-02-12 19:37:58 +01:00
Franco Fichtner
d00a9f3c16 firmware: correct install time and loop check_package #4500
The former is so we have the date of the install point, not the
date of the package build time.  And, secondly, if we loop the
argument for check through the JSON we know to put the result
into perspective later on.
2021-02-12 14:48:20 +01:00
Franco Fichtner
db87488b40 firmware: remove PIPEFILE #4500 2021-02-12 12:11:38 +01:00