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

    Gui - limiter (fixed)

    Scheduled Pinned Locked Moved 2.3-RC Snapshot Feedback and Issues - ARCHIVED
    12 Posts 3 Posters 2.7k 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.
    • S
      shinzo
      last edited by

      I can create a new limiter. But when I try to add a new queue to that limiter it gives me a 404 page not found.  :P

      1 Reply Last reply Reply Quote 0
      • S
        Steve_B Netgate
        last edited by

        The traffic shaper is a complicated beast. Would you provide a more detailed "How to reproduce" please? Page/tab/controls clicked etc. Also which build/version, OS and browser.

        Als ik kan

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

          Firewall->Trafic Shaper, Limiter tab.
          Add a limiter.
          Now edit the limiter. Press the "Add new queue" button at the bottom.
          404 error.

          This is due to firewall_shaper_vinterface.php line 432

          $url = 'href="firewall_shaper_vinterface.php?pipe=' . $pipe . '&queue=' . $queue->GetQname() . '&action=add';
          

          It needs href=" removed:

          $url = 'firewall_shaper_vinterface.php?pipe=' . $pipe . '&queue=' . $queue->GetQname() . '&action=add';
          

          But then I get an error:

          Fatal error: Call to undefined method dnqueue_class::GetBandwidth() in /etc/inc/shaper.inc on line 4191 Call Stack: 0.0002 230400 1\. {main}() /usr/local/www/firewall_shaper_vinterface.php:0 0.0995 1192416 2\. dnqueue_class->build_form() /usr/local/www/firewall_shaper_vinterface.php:202 PHP ERROR: Type: 1, File: /etc/inc/shaper.inc, Line: 4191, Message: Call to undefined method dnqueue_class::GetBandwidth()
          

          If I add GetBandwidth and SetBandwidth functions into the relevant class, then the form is displayed to add new queue. But when I press Save nothing is saved. I am not confident at all about why GetBandwidth should be needed here.

          So now I feel like I am chasing my tail - I need to understand what this is all supposed to do, rather than just patching up the next error that is displayed!

          Anyway, that might give some help to get you started.

          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
          • S
            Steve_B Netgate
            last edited by

            Thanks Phil. I'll dive in.

            Als ik kan

            1 Reply Last reply Reply Quote 0
            • S
              Steve_B Netgate
              last edited by

              Recorded in https://redmine.pfsense.org/issues/5733

              I believe this now works correctly.

              Als ik kan

              1 Reply Last reply Reply Quote 0
              • S
                shinzo
                last edited by

                Applied the changes and is working, thank you

                1 Reply Last reply Reply Quote 0
                • S
                  shinzo
                  last edited by

                  Well I thought it was done,  The mask is not saving when u add the new queue.  ;)

                  Firewall->Trafic Shaper, Limiter tab.
                  Add a limiter.
                  Now edit the limiter. Press the "Add new queue" button at the bottom.
                  Set mask to either source or destination and hit save and it just goes back to none

                  1 Reply Last reply Reply Quote 0
                  • S
                    Steve_B Netgate
                    last edited by

                    Thanks for testing that. Let me take another look while it is still (mostly) in my head.

                    Als ik kan

                    1 Reply Last reply Reply Quote 0
                    • S
                      Steve_B Netgate
                      last edited by

                      Just pushed a change to address that.

                      Als ik kan

                      1 Reply Last reply Reply Quote 0
                      • S
                        shinzo
                        last edited by

                        So it is saving now.  But If u do

                        New limiter, add all the information and save it.
                        It Creates limiter, then hit (add new queue) right away and it gives me an error of

                        Fatal error: Call to a member function addGlobal() on null in /usr/local/www/firewall_shaper.php on line 488 Call Stack: 0.0001 228344 1. {main}() /usr/local/www/firewall_shaper.php:0 PHP ERROR: Type: 1, File: /usr/local/www/firewall_shaper.php, Line: 488, Message: Call to a member function addGlobal() on null

                        But if u click on the new limiter that was created then click on ( add new queue) then it works fine

                        Also if u create a new limiter, then click on new limiter again,  It adds it to the sub of the first limiter created and just keeps adding it.

                        1 Reply Last reply Reply Quote 0
                        • S
                          Steve_B Netgate
                          last edited by

                          I think that is because you did not "Apply" the changes (creating a new limiter) before adding the new queue, so the limiter didn't really exist.

                          I have suppressed the PHP error message and altered the error message presented by the GUI to include "Did you remember to apply any recent changes?"

                          Als ik kan

                          1 Reply Last reply Reply Quote 0
                          • S
                            shinzo
                            last edited by

                            @Steve_B:

                            I think that is because you did not "Apply" the changes (creating a new limiter) before adding the new queue, so the limiter didn't really exist.

                            I have suppressed the PHP error message and altered the error message presented by the GUI to include "Did you remember to apply any recent changes?"

                            Yup forgot to hit apply changes after every step

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