You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@vcl.apache.org by "Andy Kurth (JIRA)" <ji...@apache.org> on 2015/04/03 19:27:52 UTC

[jira] [Created] (VCL-856) iptables.pm generates an error under old versions of Perl

Andy Kurth created VCL-856:
------------------------------

             Summary: iptables.pm generates an error under old versions of Perl
                 Key: VCL-856
                 URL: https://issues.apache.org/jira/browse/VCL-856
             Project: VCL
          Issue Type: Bug
          Components: vcld (backend)
    Affects Versions: 2.4
            Reporter: Andy Kurth
            Assignee: Andy Kurth
             Fix For: 2.4.2


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

{noformat}
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
{noformat}

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.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)