shell bypass 403

GrazzMean Shell

: /usr/share/doc/perl-Moose/t/bugs/ [ 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: 3.139.83.189
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : moose_exporter_false_circular_reference_rt_63818.t
use strict;
use warnings;

use Test::More;
use Test::Fatal;

# OKSet1
{

    package TESTING::MooseExporter::Rt63818::OKSet1::ModuleA;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
        ]
    );
}

# OKSet2
{

    package TESTING::MooseExporter::Rt63818::OKSet2::ModuleA;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet2::ModuleB;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
        ]
    );
}

# OKSet3
{

    package TESTING::MooseExporter::Rt63818::OKSet3::ModuleA;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet3::ModuleB;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
            'TESTING::MooseExporter::Rt63818::OKSet3::ModuleA',
        ]
    );
}

# OKSet4
{

    package TESTING::MooseExporter::Rt63818::OKSet4::ModuleA;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet4::ModuleB;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
            'TESTING::MooseExporter::Rt63818::OKSet4::ModuleA',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet4::ModuleC;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
            'TESTING::MooseExporter::Rt63818::OKSet4::ModuleA',
            'TESTING::MooseExporter::Rt63818::OKSet4::ModuleB',
        ]
    );
}

# OKSet5
{

    package TESTING::MooseExporter::Rt63818::OKSet5::ModuleA;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet5::ModuleB;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
            'TESTING::MooseExporter::Rt63818::OKSet5::ModuleA',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet5::ModuleC;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
            'TESTING::MooseExporter::Rt63818::OKSet5::ModuleA',
            'TESTING::MooseExporter::Rt63818::OKSet5::ModuleB',
        ]
    );

    package TESTING::MooseExporter::Rt63818::OKSet5::ModuleD;
    use Moose ();
    Moose::Exporter->setup_import_methods(
        also => [
            'Moose',
            'TESTING::MooseExporter::Rt63818::OKSet5::ModuleA',
            'TESTING::MooseExporter::Rt63818::OKSet5::ModuleC',
        ]
    );
}

# NotOKSet1
{

    package TESTING::MooseExporter::Rt63818::NotOKSet1::ModuleA;
    use Moose ();
    ::like(
        ::exception { Moose::Exporter->setup_import_methods(
                also => [
                    'Moose',
                    'TESTING::MooseExporter::Rt63818::NotOKSet1::ModuleA',
                ]
            )
            },
        qr/\QCircular reference in 'also' parameter to Moose::Exporter between TESTING::MooseExporter::Rt63818::NotOKSet1::ModuleA and TESTING::MooseExporter::Rt63818::NotOKSet1::ModuleA/,
        'a single-hop circular reference in also dies with an error'
    );
}

# Alas, I've not figured out how to craft a test which shows that we get the
# same error for multi-hop circularity... instead I get tests that die because
# one of the circularly-referenced things was not loaded.

done_testing;
© 2025 GrazzMean