Uploaded image for project: 'VCL'
  1. VCL
  2. VCL-856

iptables.pm generates an error under old versions of Perl

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.4
    • 2.4.2
    • vcld (backend)
    • None

    Description

      iptables.pm generates the following error under perl 5.8.x, 5.10.x, and possibly other older versions:

      Type of arg 1 to keys must be hash (not hash element) at iptables.pm line 1404, near "}) "
      Execution of iptables.pm aborted due to compilation errors (#1)
          (F) This function requires the argument in that position to be of a
          certain type.  Arrays must be @NAME or @{EXPR}.  Hashes must be
          %NAME or %{EXPR}.  No implicit dereferencing is allowed--use the
          {EXPR} forms as an explicit dereference.  See perlref.
      
      Uncaught exception from user code:
              Type of arg 1 to keys must be hash (not hash element) at iptables.pm line 1404, near "}) "
      Execution of iptables.pm aborted due to compilation errors.
       at iptables.pm line 1420
      

      The line in question is accessing a hash reference element without explicitly dereferencing the value. The error is not generated with Perl 5.16.x. Apparently, syntax rules got eased up on.

      Attachments

        Activity

          People

            arkurth Andrew Kurth
            arkurth Andrew Kurth
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: