Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    My occasional error

    Scheduled Pinned Locked Moved 2.3.1 Snapshots Testing and Feedback - ARCHIVED
    16 Posts 5 Posters 4.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • bmeeksB
      bmeeks
      last edited by

      PHP is not liking something coming from the function get_configured_interface_with_descr() in the system file guiconfig.inc.  That function simply enumerates your configured firewall interfaces and returns them in an array.  The array includes the interface description text.

      My first guess would be perhaps a character in the interface description text is tripping up the function.  What language is your firewall configured for (English, or another language with perhaps some different characters)?  Do you have any unusual punctuation in your interface description text such as quotes or an apostrophe maybe?

      Bill

      1 Reply Last reply Reply Quote 0
      • G
        grandrivers
        last edited by

        English
        and name are all plain jane no punctuation

        pfsense plus 25.03 super micro A1SRM-2558F
        C2558 32gig ECC  60gig SSD

        1 Reply Last reply Reply Quote 0
        • bmeeksB
          bmeeks
          last edited by

          @grandrivers:

          English
          and name are all plain jane no punctuation

          Hmm…the sparse error message may make this hard to find.  I have not see the error in my test virtual machines, and I don't know of any other posts here with the same problem (at least not yet).  Have you tried removing the Snort widget from the Dashboard and then adding it back?  Don't really know if that help, but it can't hurt to test.

          If that does not help, post back and we can proceed with more in-depth troubleshooting.

          Bill

          1 Reply Last reply Reply Quote 0
          • P
            phil.davis
            last edited by

            This happens infrequently to a number of people, but we have not found the common factor yet.
            Examples:
            https://forum.pfsense.org/index.php?topic=105760.0
            https://forum.pfsense.org/index.php?topic=109922.0
            and threads pointed to in those…

            As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
            If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

            1 Reply Last reply Reply Quote 0
            • bmeeksB
              bmeeks
              last edited by

              @phil.davis:

              This happens infrequently to a number of people, but we have not found the common factor yet.
              Examples:
              https://forum.pfsense.org/index.php?topic=105760.0
              https://forum.pfsense.org/index.php?topic=109922.0
              and threads pointed to in those…

              Thanks Phil for the additional information.  It appears this is maybe something going on in the overall widget code or perhaps more specifically with one of the system functions rather than being a problem with any single widget individually.  Could also be something within PHP itself, I guess.

              Bill

              1 Reply Last reply Reply Quote 0
              • P
                PiBa
                last edited by

                Its probably a php 'warning', can you check the contents of the /tmp/php_errors.log ? It should have the actual warning included. The 'partial' php error message is caused by a warning-filter https://redmine.pfsense.org/issues/6097

                1 Reply Last reply Reply Quote 0
                • G
                  grandrivers
                  last edited by

                  /tmp/php_errors.log and /tmp/php_errors.txt are both empty

                  pfsense plus 25.03 super micro A1SRM-2558F
                  C2558 32gig ECC  60gig SSD

                  1 Reply Last reply Reply Quote 0
                  • P
                    PiBa
                    last edited by

                    You do still have that 'crashreport' on the dashboard screen? If that is deleted then i think the logs are cleared as well.

                    1 Reply Last reply Reply Quote 0
                    • G
                      grandrivers
                      last edited by

                      oh ok my bad didnt think about it that way

                      pfsense plus 25.03 super micro A1SRM-2558F
                      C2558 32gig ECC  60gig SSD

                      1 Reply Last reply Reply Quote 0
                      • J
                        JorgeOliveira
                        last edited by

                        @PiBa:

                        Its probably a php 'warning', can you check the contents of the /tmp/php_errors.log ? It should have the actual warning included. The 'partial' php error message is caused by a warning-filter https://redmine.pfsense.org/issues/6097

                        Ah! So that is the reason they are not shown.

                        Based on your input I think a recommended change would be (in beginning of the command):

                        /usr/bin/grep -vi warning /tmp/PHP_errors.log
                        

                        To:

                        /bin/cat /tmp/PHP_errors.log
                        

                        On /usr/local/www/index.php and /usr/local/www/crash_reporter.php

                        My views have absolutely no warranty express or implied. Always do your own research.

                        1 Reply Last reply Reply Quote 0
                        • G
                          grandrivers
                          last edited by

                          php_errors.log
                          [01-May-2016 03:15:01 Etc/UTC] PHP Warning:  Invalid argument supplied for foreach() in /etc/inc/util.inc on line 1410
                          [01-May-2016 03:15:01 Etc/UTC] PHP Stack trace:
                          [01-May-2016 03:15:01 Etc/UTC] PHP  1. {main}() /usr/local/www/ifstats.php:0
                          [01-May-2016 03:15:01 Etc/UTC] PHP  2. require_once() /usr/local/www/ifstats.php:63
                          [01-May-2016 03:15:01 Etc/UTC] PHP  3. get_configured_interface_with_descr() /usr/local/www/guiconfig.inc:254
                          [01-May-2016 10:15:00 Etc/UTC] PHP Warning:  Invalid argument supplied for foreach() in /etc/inc/util.inc on line 1410
                          [01-May-2016 10:15:00 Etc/UTC] PHP Stack trace:
                          [01-May-2016 10:15:00 Etc/UTC] PHP  1. {main}() /usr/local/www/widgets/widgets/installed_packages.widget.php:0
                          [01-May-2016 10:15:00 Etc/UTC] PHP  2. require_once() /usr/local/www/widgets/widgets/installed_packages.widget.php:63
                          [01-May-2016 10:15:00 Etc/UTC] PHP  3. get_configured_interface_with_descr() /usr/local/www/guiconfig.inc:254

                          pfsense plus 25.03 super micro A1SRM-2558F
                          C2558 32gig ECC  60gig SSD

                          1 Reply Last reply Reply Quote 0
                          • P
                            phil.davis
                            last edited by

                            That is weird. The code is a foreach over all the interfaces:

                            foreach ($config['interfaces'] as $if => $ifdetail) {

                            It could have an "if is_array()" to protect it - that will stop those warning messages - but actually $config['interfaces'] MUST always have at least 1 interface in it. So something is going wrong with the global $config

                            As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
                            If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

                            1 Reply Last reply Reply Quote 0
                            • J
                              JorgeOliveira
                              last edited by

                              @phil.davis:

                              That is weird. The code is a foreach over all the interfaces:

                              foreach ($config['interfaces'] as $if => $ifdetail) {

                              It could have an "if is_array()" to protect it - that will stop those warning messages - but actually $config['interfaces'] MUST always have at least 1 interface in it. So something is going wrong with the global $config

                              Exactly what I was thinking.

                              IMO, the only way for that to ever happen is config.cache to be corrupted for whatever reason, so I've submitted the following PR:
                              https://github.com/pfsense/pfsense/pull/2925

                              Additionally, with regards to truncation of crash report, I've submitted another PR:
                              https://github.com/pfsense/pfsense/pull/2922

                              My views have absolutely no warranty express or implied. Always do your own research.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post
                              Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.