in reply to Breaking a Filter::decrypt like source filter

A check for Perl compiler is included, so the process dies if you try something like perl -MO=Deparse
What's it looking for? I'm sure there are ways around that.

⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

  • Comment on Re: Breaking a Filter::decrypt like source filter

Replies are listed 'Best First'.
Re^2: Breaking a Filter::decrypt like source filter
by olego (Acolyte) on Jan 24, 2007 at 21:06 UTC
    It's in the XS file (I don't have the sources of it, just the libryry file).
    I'd think it's like in Filter::decrypt, where it goes like this:
    BOOT: /* Check for the presence of the Perl Compiler */ if (gv_stashpvn("B", 1, FALSE)) croak("Aborting, Compiler detected") ;

      So rename it. You'll need to edit B.pm, B.xs, O.pm, and B/Deparse.pm. Or cause Filter::decrypt to load prior to B::Deparse so its BOOT is done in advance.

      perl -MFilter::decrypt -MO=Deparse ...

      ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

        What can I say. Simply removing the
        use Filter::decrypt;
        from the file and instead invoking it from command line in the order you said did the trick. Sometimes it's so easy you don't even see it...
        Great! Thanks a lot!