pfblocker error in php since upgrade to 2.7.0
-
Hi All,
I am getting these in my notices, they are quite frequent. The firewall is not crashing. So this may be considered low to medium of the concern item. However it may be something can lead to other issues. So I want to post it here and see if there is a solution and possibly help others.
Machine specs
Intel(R) Xeon(R) CPU E3-1270 v3 @ 3.50GHz
Current: 3500 MHz, Max: 3501 MHz
8 CPUs: 1 package(s) x 4 core(s) x 2 hardware threads
AES-NI CPU Crypto: Yes (inactive)
QAT Crypto: No
8GB RAM
4GB SSDPFSense
2.7.0-RELEASE (amd64)
built on Wed Jun 28 03:53:34 UTC 2023
FreeBSD 14.0-CURRENTPackages
pfBlockerNG net 3.2.0_6Notice report shown below. This is typical of several hundred messages.
Crash report begins. Anonymous machine information: amd64 14.0-CURRENT FreeBSD 14.0-CURRENT #1 RELENG_2_7_0-n255866-686c8d3c1f0: Wed Jun 28 04:21:19 UTC 2023 root@freebsd:/var/jenkins/workspace/pfSense-CE-snapshots-2_7_0-main/obj/amd64/LwYAddCr/var/jenkins/workspace/pfSense-CE-snapshots-2_7_0-main/sources/FreeBSD-src-REL Crash report details: PHP Errors: [22-Oct-2023 17:00:00 Etc/GMT+5] PHP Fatal error: Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given in /usr/local/pkg/pfblockerng/pfblockerng.inc:8836 Stack trace: #0 /usr/local/pkg/pfblockerng/pfblockerng.inc(8836): in_array('DNSBL_EasylistA...', NULL) #1 /usr/local/www/pfblockerng/pfblockerng.php(625): sync_package_pfblockerng('cron') #2 /usr/local/www/pfblockerng/pfblockerng.php(155): pfblockerng_sync_cron() #3 {main} thrown in /usr/local/pkg/pfblockerng/pfblockerng.inc on line 8836 [22-Oct-2023 18:00:00 Etc/GMT+5] PHP Fatal error: Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given in /usr/local/pkg/pfblockerng/pfblockerng.inc:8836 Stack trace: #0 /usr/local/pkg/pfblockerng/pfblockerng.inc(8836): in_array('DNSBL_EasylistA...', NULL) #1 /usr/local/www/pfblockerng/pfblockerng.php(625): sync_package_pfblockerng('cron') #2 /usr/local/www/pfblockerng/pfblockerng.php(155): pfblockerng_sync_cron() #3 {main} thrown in /usr/local/pkg/pfblockerng/pfblockerng.inc on line 8836
Thank you in advance.
-
Not having one (a CE Version) in front of me at this moment. What version of PHP is it running, please?
I'm on a Netgate device so with the Plus version and do not see this at version 23.09.
That was when pfSense went from v7 to v8 an issue on the plus path that was caused by some code in pfB that no longer worked because of the PHP version changed and the expected results where different. This seems similar, but in a slightly different area.
edit: can you also provide a snippet of the pfblockerng.log and error.log that correspond to the time stamp shown above (which actually seems old, considering this is November (I think))
Thanks -
@jrey In 2.7 "PHP has been upgraded from 7.4.x to 8.2.6"
@Understudy If you download "DNSBL_EasylistA" does it look like a valid format? I'm simply guessing that something might be invalid in it.
Also, "22-Oct-2023" is a few weeks ago unless your router's date is wrong.
-
Hi Steve,
I just took one of 400 plus copies of the same log error. My apologies for not using a more recent copy of the log, they are all the same.
-
I am going to download DNSBL_EasylistA when I get back to the office and I will let you know. thank you for the suggestion.
-
I am going to make a follow up post here.
I was not able at the time to determine if the DNSBL was valid or not.
I ended up putting up with the issue until I had to upgrade to 2.7.2. Once I was able to do that I did a reinstall of pkblockerng and a reboot of pfsense afterward. That appears to solve the issue.
This thread https://forum.netgate.com/topic/184797/php-error-report-on-opening-pfblockerng-page-in-gui
showed me that there was an issue possibly with an old config file hanging around. I am inclined to agree. -
Of course, as long as you understand that the part of the config we are discussing in the other thread is on systems already updated and different than the DNSBL lists.
on the other hand since it has been agreed over there that the update has likely already been run not once but twice. the menu should already be fixed. There is something else going on, and we are waiting for the OPs to respond.
It's good that updating from 2.7.0 to 2.7.2 appears to have resolved your issue. Likely just means that something else was out of step with the version of pfB you had running on 2.7.0 and what it is now.
you should be on _7 of pfBlocker now, not that there is a huge difference between it and _6.
Thanks for the feedback.