pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang/perl5
Module Name: pkgsrc
Committed By: wiz
Date: Sat Sep 19 19:18:03 UTC 2026
Modified Files:
pkgsrc/lang/perl5: Makefile distinfo
Added Files:
pkgsrc/lang/perl5/patches: patch-cpan_podlators_lib_Pod_Text.pm
patch-cpan_podlators_lib_Pod_Text_Color.pm
patch-cpan_podlators_lib_Pod_Text_Overstrike.pm
patch-cpan_podlators_lib_Pod_Text_Termcap.pm
Log Message:
perl: fix CVE-2026-82560 using upstream patch
Bump PKGREVISION.
ok bsiegert@
To generate a diff of this commit:
cvs rdiff -u -r1.297 -r1.298 pkgsrc/lang/perl5/Makefile
cvs rdiff -u -r1.202 -r1.203 pkgsrc/lang/perl5/distinfo
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text.pm \
pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Color.pm \
pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Overstrike.pm \
pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Termcap.pm
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/lang/perl5/Makefile
diff -u pkgsrc/lang/perl5/Makefile:1.297 pkgsrc/lang/perl5/Makefile:1.298
--- pkgsrc/lang/perl5/Makefile:1.297 Sun Aug 9 21:30:06 2026
+++ pkgsrc/lang/perl5/Makefile Sat Sep 19 19:18:02 2026
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.297 2026/08/09 21:30:06 wiz Exp $
+# $NetBSD: Makefile,v 1.298 2026/09/19 19:18:02 wiz Exp $
.include "license.mk"
.include "Makefile.common"
-PKGREVISION= 1
+PKGREVISION= 2
COMMENT= Practical Extraction and Report Language
Index: pkgsrc/lang/perl5/distinfo
diff -u pkgsrc/lang/perl5/distinfo:1.202 pkgsrc/lang/perl5/distinfo:1.203
--- pkgsrc/lang/perl5/distinfo:1.202 Sun Aug 9 21:30:06 2026
+++ pkgsrc/lang/perl5/distinfo Sat Sep 19 19:18:02 2026
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.202 2026/08/09 21:30:06 wiz Exp $
+$NetBSD: distinfo,v 1.203 2026/09/19 19:18:02 wiz Exp $
BLAKE2s (54cf3d44cbbedd17d774e9a37921963e8fd5d0cb.patch) = f8a0372f796accd11793695d12641d2d1395848f198d54e6900447a3d941fe48
SHA512 (54cf3d44cbbedd17d774e9a37921963e8fd5d0cb.patch) = 01fef2dfaf3bfd4b9403e92aeb9e93b8e74264cd4cb6478db1e83d7761859fd477c5ff91d9e177f7b940252f7a8b1ab0457da23c23edea81e6d71e7b213af3a2
@@ -14,6 +14,10 @@ SHA1 (patch-Makefile.SH) = 0ac10d14a36c5
SHA1 (patch-cpan_ExtUtils-MakeMaker_lib_ExtUtils_MM__BeOS.pm) = 79e5aeccfa272ca5ec08bffc616d8053ae90ac51
SHA1 (patch-cpan_ExtUtils-MakeMaker_lib_ExtUtils_MM__Unix.pm) = 996556f221eb0c75c316315462bf6cea6746e030
SHA1 (patch-cpan_ExtUtils-MakeMaker_t_MM__BeOS.t) = 9b0e7ab85fdab4887b1754599a8879bd7d9f36cc
+SHA1 (patch-cpan_podlators_lib_Pod_Text.pm) = 64a111d8fa2c15eff000b930ce908d6417ad36d8
+SHA1 (patch-cpan_podlators_lib_Pod_Text_Color.pm) = 1272cd8676ee32fcb50a2017616b1b7c18a8bae9
+SHA1 (patch-cpan_podlators_lib_Pod_Text_Overstrike.pm) = 3c937735505a4ca171322ed308f19c0cdff0fbcd
+SHA1 (patch-cpan_podlators_lib_Pod_Text_Termcap.pm) = 0a859923e2f288bb790f9808a5388bd602e3745e
SHA1 (patch-hints_cygwin.sh) = 5e2e7179336c9bc085bd2e83d22755a235ea1a4a
SHA1 (patch-hints_linux.sh) = 4baa8f80695687abb53d4f4e1830cf86db5b2bf7
SHA1 (patch-hints_netbsd.sh) = cb498170c18f1f429eed9be245cd1df24c7ad628
Added files:
Index: pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text.pm
diff -u /dev/null pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text.pm:1.1
--- /dev/null Sat Sep 19 19:18:03 2026
+++ pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text.pm Sat Sep 19 19:18:02 2026
@@ -0,0 +1,46 @@
+$NetBSD: patch-cpan_podlators_lib_Pod_Text.pm,v 1.1 2026/09/19 19:18:02 wiz Exp $
+
+From 70510174f69eb54aa6d617bde4e1402cd9b7c61f Mon Sep 17 00:00:00 2001
+From: Russ Allbery <rra%cpan.org@localhost>
+Date: Sat, 29 Aug 2026 10:29:37 -0700
+Subject: [PATCH] Handle pathological margins in Pod::Text
+
+If the margin equals or exceeds the output width, Pod::Text and its
+subclasses could hang forever in the wrapping regular expression,
+since it would successfully match zero characters. Catch this case,
+report an error, and force the margin to zero.
+
+--- cpan/podlators/lib/Pod/Text.pm.orig 2026-05-14 00:58:29.000000000 +0000
++++ cpan/podlators/lib/Pod/Text.pm
+@@ -248,6 +248,17 @@ sub wrap {
+ my $output = '';
+ my $spaces = ' ' x $$self{MARGIN};
+ my $width = $$self{opt_width} - $$self{MARGIN};
++
++ # Pathological margins make wrapping impossible. In this case, complain
++ # to the user and reset the margin to 0.
++ if ($width <= 0) {
++ my $error = 'Margin is wider than the output width';
++ $self->whine($self->line_count(), $error);
++ $spaces = q{};
++ $width = $self->{opt_width};
++ }
++
++ # Perform the wrapping.
+ while (length > $width) {
+ if (s/^([^\n]{0,$width})[ \t\n]+// || s/^([^\n]{$width})//) {
+ $output .= $spaces . $1 . "\n";
+@@ -1162,6 +1173,13 @@ character long or an even number (greater than one) ch
+ (F) The quote specification given (the C<quotes> option to the
+ constructor) was invalid. A quote specification must be either one
+ character long or an even number (greater than one) characters long.
++
++=item Margin is wider than the output width
++
++(W) The requested margin width, determined from the sum of indentations
++requested by C<=over> and the baseline indentation for text, is equal to or
++wider than the desired output width specified with C<width>. The text will
++be formatted as if the margin was set to zero.
+
+ =item POD document had syntax errors
+
Index: pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Color.pm
diff -u /dev/null pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Color.pm:1.1
--- /dev/null Sat Sep 19 19:18:03 2026
+++ pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Color.pm Sat Sep 19 19:18:02 2026
@@ -0,0 +1,23 @@
+$NetBSD: patch-cpan_podlators_lib_Pod_Text_Color.pm,v 1.1 2026/09/19 19:18:02 wiz Exp $
+
+From 70510174f69eb54aa6d617bde4e1402cd9b7c61f Mon Sep 17 00:00:00 2001
+From: Russ Allbery <rra%cpan.org@localhost>
+Date: Sat, 29 Aug 2026 10:29:37 -0700
+Subject: [PATCH] Handle pathological margins in Pod::Text
+
+If the margin equals or exceeds the output width, Pod::Text and its
+subclasses could hang forever in the wrapping regular expression,
+since it would successfully match zero characters. Catch this case,
+report an error, and force the margin to zero.
+
+--- cpan/podlators/lib/Pod/Text/Color.pm.orig 2026-05-14 00:58:29.000000000 +0000
++++ cpan/podlators/lib/Pod/Text/Color.pm
+@@ -191,7 +191,7 @@ Russ Allbery <rra%cpan.org@localhost>.
+
+ =head1 COPYRIGHT AND LICENSE
+
+-Copyright 1999, 2001, 2004, 2006, 2008, 2009, 2018-2019, 2022, 2024 Russ
++Copyright 1999, 2001, 2004, 2006, 2008, 2009, 2018-2019, 2022, 2024, 2026 Russ
+ Allbery <rra%cpan.org@localhost>
+
+ This program is free software; you may redistribute it and/or modify it
Index: pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Overstrike.pm
diff -u /dev/null pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Overstrike.pm:1.1
--- /dev/null Sat Sep 19 19:18:03 2026
+++ pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Overstrike.pm Sat Sep 19 19:18:02 2026
@@ -0,0 +1,40 @@
+$NetBSD: patch-cpan_podlators_lib_Pod_Text_Overstrike.pm,v 1.1 2026/09/19 19:18:02 wiz Exp $
+
+From 70510174f69eb54aa6d617bde4e1402cd9b7c61f Mon Sep 17 00:00:00 2001
+From: Russ Allbery <rra%cpan.org@localhost>
+Date: Sat, 29 Aug 2026 10:29:37 -0700
+Subject: [PATCH] Handle pathological margins in Pod::Text
+
+If the margin equals or exceeds the output width, Pod::Text and its
+subclasses could hang forever in the wrapping regular expression,
+since it would successfully match zero characters. Catch this case,
+report an error, and force the margin to zero.
+
+--- cpan/podlators/lib/Pod/Text/Overstrike.pm.orig 2026-05-14 00:58:29.000000000 +0000
++++ cpan/podlators/lib/Pod/Text/Overstrike.pm
+@@ -103,6 +103,16 @@ sub wrap {
+ my $output = '';
+ my $spaces = ' ' x $$self{MARGIN};
+ my $width = $$self{opt_width} - $$self{MARGIN};
++
++ # Pathological margins make wrapping impossible. In this case, complain to
++ # the user and reset the margin to 0.
++ if ($width <= 0) {
++ my $error = 'Margin is wider than the output width';
++ $self->whine($self->line_count(), $error);
++ $spaces = q{};
++ $width = $self->{opt_width};
++ }
++
+ while (length > $width) {
+ # This regex represents a single character, that's possibly underlined
+ # or in bold (in which case, it's three characters; the character, a
+@@ -198,7 +208,7 @@ Copyright 2000 Joe Smith <Joe.Smith%inwap.com@localhost>
+
+ Copyright 2000 Joe Smith <Joe.Smith%inwap.com@localhost>
+
+-Copyright 2001, 2004, 2008, 2014, 2018-2019, 2022, 2024 Russ Allbery
++Copyright 2001, 2004, 2008, 2014, 2018-2019, 2022, 2024, 2026 Russ Allbery
+ <rra%cpan.org@localhost>
+
+ This program is free software; you may redistribute it and/or modify it
Index: pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Termcap.pm
diff -u /dev/null pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Termcap.pm:1.1
--- /dev/null Sat Sep 19 19:18:03 2026
+++ pkgsrc/lang/perl5/patches/patch-cpan_podlators_lib_Pod_Text_Termcap.pm Sat Sep 19 19:18:02 2026
@@ -0,0 +1,39 @@
+$NetBSD: patch-cpan_podlators_lib_Pod_Text_Termcap.pm,v 1.1 2026/09/19 19:18:02 wiz Exp $
+
+From 70510174f69eb54aa6d617bde4e1402cd9b7c61f Mon Sep 17 00:00:00 2001
+From: Russ Allbery <rra%cpan.org@localhost>
+Date: Sat, 29 Aug 2026 10:29:37 -0700
+Subject: [PATCH] Handle pathological margins in Pod::Text
+
+If the margin equals or exceeds the output width, Pod::Text and its
+subclasses could hang forever in the wrapping regular expression,
+since it would successfully match zero characters. Catch this case,
+report an error, and force the margin to zero.
+
+--- cpan/podlators/lib/Pod/Text/Termcap.pm.orig 2026-05-14 00:58:29.000000000 +0000
++++ cpan/podlators/lib/Pod/Text/Termcap.pm
+@@ -147,6 +147,15 @@ sub wrap {
+ return $self->SUPER::wrap($_);
+ }
+
++ # Pathological margins make wrapping impossible. In this case, complain to
++ # the user and reset the margin to 0.
++ if ($width <= 0) {
++ my $error = 'Margin is wider than the output width';
++ $self->whine($self->line_count(), $error);
++ $spaces = q{};
++ $width = $self->{opt_width};
++ }
++
+ # $code matches a single special sequence. $char matches any number of
+ # special sequences preceding a single character other than a newline.
+ # $shortchar matches some sequence of $char ending in codes followed by
+@@ -263,7 +272,7 @@ Copyright 1999, 2001-2002, 2004, 2006, 2008-2009, 2014
+ =head1 COPYRIGHT AND LICENSE
+
+ Copyright 1999, 2001-2002, 2004, 2006, 2008-2009, 2014-2015, 2018-2019, 2022,
+-2024 Russ Allbery <rra%cpan.org@localhost>
++2024, 2026 Russ Allbery <rra%cpan.org@localhost>
+
+ This program is free software; you may redistribute it and/or modify it
+ under the same terms as Perl itself.
Home |
Main Index |
Thread Index |
Old Index