Actions
Regression #13983
closedMultiple PHP errors in the DHCP Server when the configuration contains an empty section for an interface
Start date:
Due date:
% Done:
100%
Estimated time:
Plus Target Version:
23.05
Release Notes:
Default
Affected Version:
2.7.0
Affected Architecture:
Description
Seeing multiple pfSense 23.01 users having these PHP fatal error crashes. I got it in the DHCP Server tab by simply clicking the "save" button.
Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/system.inc:422 Stack trace: #0 /etc/inc/system.inc(520): system_hosts_dhcpd_entries() #1 /etc/inc/system.inc(551): system_hosts_entries(Array) #2 /etc/inc/services.inc(2772): system_hosts_generate() #3 /usr/local/www/services_dhcp.php(788): services_unbound_configure() #4 {main} thrown in /etc/inc/system.inc on line 422
After that system is unresponsive with no connection. Rebooting via console works but while bootup more PHP errors (with the same "Cannot access offset of type string on string in" message) and the system fails to start. Only reverting config does help.
This issue happens with multiple clean installs on a Netgate 6100 MAX.
Files
Updated by Marcos M almost 2 years ago
- Tracker changed from Bug to Regression
- Subject changed from PHP Fatal Error to PHP error with DHCP Server
- Description updated (diff)
- Category changed from FreeBSD to DHCP Server (IPv4)
- Priority changed from High to Normal
- Affected Architecture deleted (
6100)
Additional report:
Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/services_dhcp.php:140 Stack trace: #0 {main} thrown in /usr/local/www/services_dhcp.php on line 140
Updated by Marcos M almost 2 years ago
- Project changed from pfSense Plus to pfSense
- Category changed from DHCP Server (IPv4) to DHCP (IPv4)
- Affected Plus Version deleted (
23.01) - Affected Version set to 2.7.0
Additional report:
PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/services.inc:542 Stack trace: #0 /etc/inc/services.inc(483): services_dhcpdv4_configure() #1 /etc/rc.bootup(371): services_dhcpd_configure() #2 {main} thrown in /etc/inc/services.inc on line 542
After saving LAN interface config on the same system:
Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/services.inc:542 Stack trace: #0 /etc/inc/services.inc(483): services_dhcpdv4_configure() #1 /etc/inc/interfaces.inc(7492): services_dhcpd_configure() #2 /usr/local/www/interfaces.php(483): restart_interface_services('lan', NULL) #3 {main} thrown in /etc/inc/services.inc on line 542
After saving the DHCP Server config:
Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/services_dhcp.php:140 Stack trace: #0 {main} thrown in /usr/local/www/services_dhcp.php on line 140
Updated by Marcos M almost 2 years ago
Additional report:
PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/services.inc:1659 Stack trace: #0 /etc/inc/services.inc(486): services_dhcpdv6_configure(Array) #1 /etc/rc.bootup(371): services_dhcpd_configure() #2 {main} thrown in /etc/inc/services.inc on line 1659
PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/services.inc:62 Stack trace: #0 /etc/inc/service-utils.inc(705): services_radvd_configure() #1 /usr/local/www/status_services.php(46): service_control_start('radvd', Array) #2 {main} thrown in /etc/inc/services.inc on line 62
Updated by Jim Pingle almost 2 years ago
- Assignee set to Jim Pingle
- Target version set to 2.7.0
- Plus Target Version set to 23.05
Updated by aleksei prokofiev over 1 year ago
- File PHP_errors.log PHP_errors.log added
Another one report but from xg-7100-1U
Updated by Jim Pingle over 1 year ago
- Status changed from New to In Progress
Looks like most (or all?) of these are from having an empty interface config in DHCP settings, e.g.
<dhcpd>
[...]
<opt1></opt1>
</dhcpd>
I'm working on fixes but in the meantime, editing those bad items out of the config would solve it locally.
Updated by Jim Pingle over 1 year ago
- Status changed from In Progress to Feedback
- % Done changed from 0 to 100
Applied in changeset fae6b2c014749b3f56e03b3ea7e51ecee2cf53be.
Updated by Christopher Cope over 1 year ago
- Status changed from Feedback to Resolved
Tested on
23.05-DEVELOPMENT (amd64) built on Wed Mar 15 06:04:38 UTC 2023 FreeBSD 14.0-CURRENTWorking as expected. Marking resolved.
Updated by Jim Pingle over 1 year ago
- Subject changed from PHP error with DHCP Server to Multiple PHP errors in the DHCP Server when the configuration contains an empty section for an interface
Updating subject for release notes.
Actions