diff options
Diffstat (limited to 'lang')
-rw-r--r-- | lang/perl5/Makefile.common | 4 | ||||
-rw-r--r-- | lang/perl5/distinfo | 14 | ||||
-rw-r--r-- | lang/perl5/patches/patch-ca | 20 | ||||
-rw-r--r-- | lang/perl5/patches/patch-dist_Data-Dumper_Dumper.pm | 65 | ||||
-rw-r--r-- | lang/perl5/patches/patch-dist_Data-Dumper_Dumper.xs | 123 | ||||
-rw-r--r-- | lang/perl5/patches/patch-hints_netbsd.sh | 47 |
6 files changed, 24 insertions, 249 deletions
diff --git a/lang/perl5/Makefile.common b/lang/perl5/Makefile.common index f70a14434cb..4f7f029ea0c 100644 --- a/lang/perl5/Makefile.common +++ b/lang/perl5/Makefile.common @@ -1,9 +1,9 @@ -# $NetBSD: Makefile.common,v 1.22 2014/10/01 07:17:02 adam Exp $ +# $NetBSD: Makefile.common,v 1.23 2015/02/25 14:56:45 wiz Exp $ # # used by lang/perl5/Makefile # used by databases/p5-gdbm/Makefile -DISTNAME= perl-5.20.1 +DISTNAME= perl-5.20.2 CATEGORIES= lang devel perl5 MASTER_SITES= ${MASTER_SITE_PERL_CPAN:S,/modules/by-module/$,/src/5.0/,} DISTFILES+= ${DISTNAME}${EXTRACT_SUFX} diff --git a/lang/perl5/distinfo b/lang/perl5/distinfo index e743325c483..6d1d2a34f23 100644 --- a/lang/perl5/distinfo +++ b/lang/perl5/distinfo @@ -1,25 +1,23 @@ -$NetBSD: distinfo,v 1.125 2014/11/22 15:45:41 bsiegert Exp $ +$NetBSD: distinfo,v 1.126 2015/02/25 14:56:45 wiz Exp $ -SHA1 (perl-5.20.1.tar.bz2) = cd424d1520ba2686fe5d4422565aaf880e9467f6 -RMD160 (perl-5.20.1.tar.bz2) = 8a33e7ef2cbe4b11c83187176656454794f6d26d -Size (perl-5.20.1.tar.bz2) = 13676155 bytes +SHA1 (perl-5.20.2.tar.bz2) = 63126c683b4c79c35008a47d56f7beae876c569f +RMD160 (perl-5.20.2.tar.bz2) = a24d4c70846ae4332d01d8d56696a55bf492f44b +Size (perl-5.20.2.tar.bz2) = 13717128 bytes SHA1 (patch-Makefile.SH) = 92c623fe1ea024b05f47bcfee7002e02647d5062 SHA1 (patch-aa) = 441ad4f0d27d9be0fcdce31c9d35d35d98958518 SHA1 (patch-ab) = c899b7221a78e74cc9b1480834baba047dd19f38 SHA1 (patch-ac) = 4baa8f80695687abb53d4f4e1830cf86db5b2bf7 SHA1 (patch-ah) = c1cb4ddb6db49dcfe12bb1d47911668b2318b953 SHA1 (patch-aq) = 4bf5a76f0277b0939b2ca7720f4bb045a788b5cc -SHA1 (patch-ca) = dcd3ab4d69a5a54677894f35b8bc536f48a19c45 +SHA1 (patch-ca) = d4a924b4e78d210d143f4e40f63082b6d42fc0e8 SHA1 (patch-ch) = 5b6a89c82e158bab0a5f06add48c28e600678099 SHA1 (patch-ck) = 5c381db130cdf4c315678e2d65380eaaa3065fee SHA1 (patch-cn) = d1877383e213a414562b5bb4c1e8aa785926fab7 SHA1 (patch-cpan_Socket_Socket.xs) = 9390c42ad456b0ea114c2e57e4d829d630fb698e -SHA1 (patch-dist_Data-Dumper_Dumper.pm) = 27f9bb4084aa0b21b05bd10d850942b978f7f821 -SHA1 (patch-dist_Data-Dumper_Dumper.xs) = 2e3384973a70b46f8f9ed72c0e9966e00fcbd8af SHA1 (patch-ext_Errno_Errno__pm.PL) = 4f135e267da17de38f8f1e7e03d5209bfd09a323 SHA1 (patch-hints_cygwin.sh) = 1b21d927d6b7379754c4cd64a2b05d3632c35470 SHA1 (patch-hints_darwin.sh) = 15596f109f317ffb14c695b4196bb37699d2f34b -SHA1 (patch-hints_netbsd.sh) = 16a8b649e23b1d03f4756ec283da44cc08ea9a6b +SHA1 (patch-hints_netbsd.sh) = 0d549a48800372d75fe34b783529a78cba90f646 SHA1 (patch-hints_sco.sh) = 8d43cdc0632799e1cdb5dc6fdb968052a9ae4216 SHA1 (patch-install__lib.pl) = 31e9e0fc34386542dd6a60bf6ca0a607babbd4b6 SHA1 (patch-ta) = a9d13eeec22733e4087942f217a0d47a19498a6f diff --git a/lang/perl5/patches/patch-ca b/lang/perl5/patches/patch-ca index 8a0ef7d8c27..d2718eb1fa0 100644 --- a/lang/perl5/patches/patch-ca +++ b/lang/perl5/patches/patch-ca @@ -1,10 +1,10 @@ -$NetBSD: patch-ca,v 1.21 2014/06/08 23:35:55 joerg Exp $ +$NetBSD: patch-ca,v 1.22 2015/02/25 14:56:45 wiz Exp $ * Use "uname -r" to get OS version for *BSD. * Move $loclibpth to the end of $dlist, instead of the beginning. * Several other changes. ---- Configure.orig 2014-05-26 13:34:18.000000000 +0000 +--- Configure.orig 2015-01-10 12:06:37.000000000 +0000 +++ Configure @@ -3372,13 +3372,14 @@ EOM osvers="$3" @@ -132,16 +132,18 @@ $NetBSD: patch-ca,v 1.21 2014/06/08 23:35:55 joerg Exp $ solaris) # See [perl #66604]. # On Solaris 11, gcc -m64 on amd64 # appears not to understand -G. gcc versions at -@@ -8549,7 +8567,7 @@ if "$useshrplib"; then +@@ -8548,6 +8566,10 @@ if "$useshrplib"; then + next) # next doesn't like the default... ;; - haiku) -- # Haiku doesn't like the default, either. ++ haiku) ++ # Haiku doesn't like the default, either. + xxx="-Wl,-rpath,$shrpdir" - ;; ++ ;; hpux*) # hpux doesn't like the default, either. -@@ -8558,6 +8576,9 @@ if "$useshrplib"; then + tmp_shrpenv="env LDOPTS=\"+s +b${shrpdir}\"" +@@ -8555,6 +8577,9 @@ if "$useshrplib"; then cygwin) # cygwin needs only ldlibpth ;; @@ -151,7 +153,7 @@ $NetBSD: patch-ca,v 1.21 2014/06/08 23:35:55 joerg Exp $ *) tmp_shrpenv="env LD_RUN_PATH=$shrpdir" ;; -@@ -9633,6 +9654,13 @@ esac +@@ -9630,6 +9655,13 @@ esac : Check if we want perlio useperlio="$define" @@ -165,7 +167,7 @@ $NetBSD: patch-ca,v 1.21 2014/06/08 23:35:55 joerg Exp $ : Set the vendorbin variables case "$vendorprefix" in '') d_vendorbin="$undef" -@@ -19366,7 +19394,15 @@ RCAT(Rei,ser) +@@ -19363,7 +19395,15 @@ RCAT(Rei,ser) ACAT(Cir,cus) EOCP $cppstdin $cppflags $cppminus <cpp_stuff.c >cpp_stuff.out 2>&1 diff --git a/lang/perl5/patches/patch-dist_Data-Dumper_Dumper.pm b/lang/perl5/patches/patch-dist_Data-Dumper_Dumper.pm deleted file mode 100644 index ef93d97411a..00000000000 --- a/lang/perl5/patches/patch-dist_Data-Dumper_Dumper.pm +++ /dev/null @@ -1,65 +0,0 @@ -$NetBSD: patch-dist_Data-Dumper_Dumper.pm,v 1.1 2014/09/29 11:36:01 spz Exp $ - -patch for CVE-2014-4330, remove for 5.20.1 -taken from http://perl5.git.perl.org/perl.git/commitdiff/19be3be6968e2337bcdfe480693fff795ecd1304 - ---- dist/Data-Dumper/Dumper.pm.orig 2014-05-26 13:34:19.000000000 +0000 -+++ dist/Data-Dumper/Dumper.pm -@@ -56,6 +56,7 @@ $Useperl = 0 unless defined $ - $Sortkeys = 0 unless defined $Sortkeys; - $Deparse = 0 unless defined $Deparse; - $Sparseseen = 0 unless defined $Sparseseen; -+$Maxrecurse = 1000 unless defined $Maxrecurse; - - # - # expects an arrayref of values to be dumped. -@@ -92,6 +93,7 @@ sub new { - 'bless' => $Bless, # keyword to use for "bless" - # expdepth => $Expdepth, # cutoff depth for explicit dumping - maxdepth => $Maxdepth, # depth beyond which we give up -+ maxrecurse => $Maxrecurse, # depth beyond which we abort - useperl => $Useperl, # use the pure Perl implementation - sortkeys => $Sortkeys, # flag or filter for sorting hash keys - deparse => $Deparse, # use B::Deparse for coderefs -@@ -350,6 +352,12 @@ sub _dump { - return qq['$val']; - } - -+ # avoid recursing infinitely [perl #122111] -+ if ($s->{maxrecurse} > 0 -+ and $s->{level} >= $s->{maxrecurse}) { -+ die "Recursion limit of $s->{maxrecurse} exceeded"; -+ } -+ - # we have a blessed ref - my ($blesspad); - if ($realpack and !$no_bless) { -@@ -680,6 +688,11 @@ sub Maxdepth { - defined($v) ? (($s->{'maxdepth'} = $v), return $s) : $s->{'maxdepth'}; - } - -+sub Maxrecurse { -+ my($s, $v) = @_; -+ defined($v) ? (($s->{'maxrecurse'} = $v), return $s) : $s->{'maxrecurse'}; -+} -+ - sub Useperl { - my($s, $v) = @_; - defined($v) ? (($s->{'useperl'} = $v), return $s) : $s->{'useperl'}; -@@ -1105,6 +1118,16 @@ no maximum depth. - - =item * - -+$Data::Dumper::Maxrecurse I<or> $I<OBJ>->Maxrecurse(I<[NEWVAL]>) -+ -+Can be set to a positive integer that specifies the depth beyond which -+recursion into a structure will throw an exception. This is intended -+as a security measure to prevent perl running out of stack space when -+dumping an excessively deep structure. Can be set to 0 to remove the -+limit. Default is 1000. -+ -+=item * -+ - $Data::Dumper::Useperl I<or> $I<OBJ>->Useperl(I<[NEWVAL]>) - - Can be set to a boolean value which controls whether the pure Perl diff --git a/lang/perl5/patches/patch-dist_Data-Dumper_Dumper.xs b/lang/perl5/patches/patch-dist_Data-Dumper_Dumper.xs deleted file mode 100644 index 99bcbb15156..00000000000 --- a/lang/perl5/patches/patch-dist_Data-Dumper_Dumper.xs +++ /dev/null @@ -1,123 +0,0 @@ -$NetBSD: patch-dist_Data-Dumper_Dumper.xs,v 1.1 2014/09/29 11:36:01 spz Exp $ - -patch for CVE-2014-4330, remove for 5.20.1 -taken from http://perl5.git.perl.org/perl.git/commitdiff/19be3be6968e2337bcdfe480693fff795ecd1304 - ---- dist/Data-Dumper/Dumper.xs.orig 2014-05-26 13:34:19.000000000 +0000 -+++ dist/Data-Dumper/Dumper.xs -@@ -28,7 +28,7 @@ static I32 DD_dump (pTHX_ SV *val, const - SV *pad, SV *xpad, SV *apad, SV *sep, SV *pair, - SV *freezer, SV *toaster, - I32 purity, I32 deepcopy, I32 quotekeys, SV *bless, -- I32 maxdepth, SV *sortkeys, int use_sparse_seen_hash, I32 useqq); -+ I32 maxdepth, SV *sortkeys, int use_sparse_seen_hash, I32 useqq, IV maxrecurse); - - #ifndef HvNAME_get - #define HvNAME_get HvNAME -@@ -412,7 +412,7 @@ DD_dump(pTHX_ SV *val, const char *name, - AV *postav, I32 *levelp, I32 indent, SV *pad, SV *xpad, - SV *apad, SV *sep, SV *pair, SV *freezer, SV *toaster, I32 purity, - I32 deepcopy, I32 quotekeys, SV *bless, I32 maxdepth, SV *sortkeys, -- int use_sparse_seen_hash, I32 useqq) -+ int use_sparse_seen_hash, I32 useqq, IV maxrecurse) - { - char tmpbuf[128]; - Size_t i; -@@ -589,6 +589,10 @@ DD_dump(pTHX_ SV *val, const char *name, - return 1; - } - -+ if (maxrecurse > 0 && *levelp >= maxrecurse) { -+ croak("Recursion limit of %" IVdf " exceeded", maxrecurse); -+ } -+ - if (realpack && !no_bless) { /* we have a blessed ref */ - STRLEN blesslen; - const char * const blessstr = SvPV(bless, blesslen); -@@ -674,7 +678,8 @@ DD_dump(pTHX_ SV *val, const char *name, - DD_dump(aTHX_ ival, SvPVX_const(namesv), SvCUR(namesv), retval, seenhv, - postav, levelp, indent, pad, xpad, apad, sep, pair, - freezer, toaster, purity, deepcopy, quotekeys, bless, -- maxdepth, sortkeys, use_sparse_seen_hash, useqq); -+ maxdepth, sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - sv_catpvn(retval, ")}", 2); - } /* plain */ - else { -@@ -682,7 +687,8 @@ DD_dump(pTHX_ SV *val, const char *name, - DD_dump(aTHX_ ival, SvPVX_const(namesv), SvCUR(namesv), retval, seenhv, - postav, levelp, indent, pad, xpad, apad, sep, pair, - freezer, toaster, purity, deepcopy, quotekeys, bless, -- maxdepth, sortkeys, use_sparse_seen_hash, useqq); -+ maxdepth, sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - } - SvREFCNT_dec(namesv); - } -@@ -694,7 +700,8 @@ DD_dump(pTHX_ SV *val, const char *name, - DD_dump(aTHX_ ival, SvPVX_const(namesv), SvCUR(namesv), retval, seenhv, - postav, levelp, indent, pad, xpad, apad, sep, pair, - freezer, toaster, purity, deepcopy, quotekeys, bless, -- maxdepth, sortkeys, use_sparse_seen_hash, useqq); -+ maxdepth, sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - SvREFCNT_dec(namesv); - } - else if (realtype == SVt_PVAV) { -@@ -767,7 +774,8 @@ DD_dump(pTHX_ SV *val, const char *name, - DD_dump(aTHX_ elem, iname, ilen, retval, seenhv, postav, - levelp, indent, pad, xpad, apad, sep, pair, - freezer, toaster, purity, deepcopy, quotekeys, bless, -- maxdepth, sortkeys, use_sparse_seen_hash, useqq); -+ maxdepth, sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - if (ix < ixmax) - sv_catpvn(retval, ",", 1); - } -@@ -970,7 +978,8 @@ DD_dump(pTHX_ SV *val, const char *name, - DD_dump(aTHX_ hval, SvPVX_const(sname), SvCUR(sname), retval, seenhv, - postav, levelp, indent, pad, xpad, newapad, sep, pair, - freezer, toaster, purity, deepcopy, quotekeys, bless, -- maxdepth, sortkeys, use_sparse_seen_hash, useqq); -+ maxdepth, sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - SvREFCNT_dec(sname); - Safefree(nkey_buffer); - if (indent >= 2) -@@ -1179,7 +1188,8 @@ DD_dump(pTHX_ SV *val, const char *name, - seenhv, postav, &nlevel, indent, pad, xpad, - newapad, sep, pair, freezer, toaster, purity, - deepcopy, quotekeys, bless, maxdepth, -- sortkeys, use_sparse_seen_hash, useqq); -+ sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - SvREFCNT_dec(e); - } - } -@@ -1269,6 +1279,7 @@ Data_Dumper_Dumpxs(href, ...) - SV *val, *name, *pad, *xpad, *apad, *sep, *pair, *varname; - SV *freezer, *toaster, *bless, *sortkeys; - I32 purity, deepcopy, quotekeys, maxdepth = 0; -+ IV maxrecurse = 1000; - char tmpbuf[1024]; - I32 gimme = GIMME; - int use_sparse_seen_hash = 0; -@@ -1355,6 +1366,8 @@ Data_Dumper_Dumpxs(href, ...) - bless = *svp; - if ((svp = hv_fetch(hv, "maxdepth", 8, FALSE))) - maxdepth = SvIV(*svp); -+ if ((svp = hv_fetch(hv, "maxrecurse", 10, FALSE))) -+ maxrecurse = SvIV(*svp); - if ((svp = hv_fetch(hv, "sortkeys", 8, FALSE))) { - sortkeys = *svp; - if (! SvTRUE(sortkeys)) -@@ -1434,7 +1447,8 @@ Data_Dumper_Dumpxs(href, ...) - DD_dump(aTHX_ val, SvPVX_const(name), SvCUR(name), valstr, seenhv, - postav, &level, indent, pad, xpad, newapad, sep, pair, - freezer, toaster, purity, deepcopy, quotekeys, -- bless, maxdepth, sortkeys, use_sparse_seen_hash, useqq); -+ bless, maxdepth, sortkeys, use_sparse_seen_hash, useqq, -+ maxrecurse); - SPAGAIN; - - if (indent >= 2 && !terse) diff --git a/lang/perl5/patches/patch-hints_netbsd.sh b/lang/perl5/patches/patch-hints_netbsd.sh index a195415b5ee..8bf82e7f572 100644 --- a/lang/perl5/patches/patch-hints_netbsd.sh +++ b/lang/perl5/patches/patch-hints_netbsd.sh @@ -1,12 +1,12 @@ -$NetBSD: patch-hints_netbsd.sh,v 1.9 2014/08/12 05:41:39 mrg Exp $ +$NetBSD: patch-hints_netbsd.sh,v 1.10 2015/02/25 14:56:45 wiz Exp $ --whole-archive is a linker flag, not a compiler flag Better defaults for paths. Stop grovelling for functions we don't want to provide (*host*) ---- hints/netbsd.sh.orig 2014-08-11 22:30:50.000000000 -0700 -+++ hints/netbsd.sh 2014-08-11 22:32:13.000000000 -0700 -@@ -36,16 +36,6 @@ +--- hints/netbsd.sh.orig 2015-01-17 16:59:58.000000000 +0000 ++++ hints/netbsd.sh +@@ -36,16 +36,6 @@ case "$osvers" in d_dlerror=$define cccdlflags="-DPIC -fPIC $cccdlflags" lddlflags="-shared $lddlflags" @@ -23,44 +23,7 @@ Stop grovelling for functions we don't want to provide (*host*) rpathflag="-Wl,-rpath," case "$osvers" in 1.[0-5]*) -@@ -89,7 +79,9 @@ - ;; - esac - case "$osvers" in --0.9*|1.*|2.*|3.*|4.*|5.*|6.*) -+0.8*) -+ ;; -+*) - d_getprotoent_r="$undef" - d_getprotobyname_r="$undef" - d_getprotobynumber_r="$undef" -@@ -100,6 +92,12 @@ - d_getservbyport_r="$undef" - d_setservent_r="$undef" - d_endservent_r="$undef" -+ d_gethostbyname_r="$undef" -+ d_gethostbyaddr2_r="$undef" -+ d_gethostbyaddr_r="$undef" -+ d_sethostent_r="$undef" -+ d_gethostent_r="$undef" -+ d_endhostent_r="$undef" - d_getprotoent_r_proto="0" - d_getprotobyname_r_proto="0" - d_getprotobynumber_r_proto="0" -@@ -110,6 +108,12 @@ - d_getservbyport_r_proto="0" - d_setservent_r_proto="0" - d_endservent_r_proto="0" -+ d_gethostbyname_r_proto="0" -+ d_gethostbyaddr2_r_proto="0" -+ d_gethostbyaddr_r_proto="0" -+ d_sethostent_r_proto="0" -+ d_endhostent_r_proto="0" -+ d_gethostent_r_proto="0" - ;; - esac - -@@ -186,10 +190,12 @@ +@@ -200,10 +190,12 @@ esac EOCBU # Set sensible defaults for NetBSD: look for local software in |