Security Advisories (1)
CVE-2026-8376 (2026-05-25)

Perl versions through 5.43.10 have a heap buffer overflow when compiling regular expressions with a repeated fixed string on 32-bit builds. Perl_study_chunk in regcomp_study.c checked the size of the joined substring buffer in characters rather than bytes. For a quantified fixed substring with a large minimum count, the byte length mincount * l could overflow SSize_t, producing an undersized SvGROW allocation; the subsequent copy writes past the end of the buffer. A caller that compiles an attacker-controlled regular expression on a 32-bit perl build triggers a heap buffer overflow at compile time.

NAME

Test2::EventFacet::Plan - Facet for setting the plan

DESCRIPTION

Events use this facet when they need to set the plan.

FIELDS

$string = $plan->{details}
$string = $plan->details()

Human readable explanation for the plan being set. This is normally not rendered by most formatters except when the skip field is also set.

$positive_int = $plan->{count}
$positive_int = $plan->count()

Set the number of expected assertions. This should usually be set to 0 when skip or none are also set.

$bool = $plan->{skip}
$bool = $plan->skip()

When true the entire test should be skipped. This is usually paired with an explanation in the details field, and a control facet that has terminate set to 0.

$bool = $plan->{none}
$bool = $plan->none()

This is mainly used by legacy Test::Builder tests which set the plan to no plan, a construct that predates the much better done_testing().

If you are using this in non-legacy code you may need to reconsider the course of your life, maybe a hermitage would suite you?

SOURCE

The source code repository for Test2 can be found at https://github.com/Test-More/test-more/.

MAINTAINERS

Chad Granum <exodist@cpan.org>

AUTHORS

Chad Granum <exodist@cpan.org>

COPYRIGHT

Copyright Chad Granum <exodist@cpan.org>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See https://dev.perl.org/licenses/