diff --git a/perl-errorcount.diff b/perl-errorcount.diff new file mode 100644 index 0000000..f4676fb --- /dev/null +++ b/perl-errorcount.diff @@ -0,0 +1,10 @@ +--- toke.c.orig 2007-12-18 10:47:08.000000000 +0000 ++++ toke.c 2009-06-10 09:20:40.000000000 +0000 +@@ -692,6 +692,7 @@ Perl_lex_start(pTHX_ SV *line, PerlIO *r + #else + parser->nexttoke = 0; + #endif ++ parser->error_count = oparser ? oparser->error_count : 0; + parser->copline = NOLINE; + parser->lex_state = LEX_NORMAL; + parser->expect = XSTATE; diff --git a/perl-fast-syslog.diff b/perl-fast-syslog.diff new file mode 100644 index 0000000..9d4b232 --- /dev/null +++ b/perl-fast-syslog.diff @@ -0,0 +1,11 @@ +--- ext/Sys/Syslog/Syslog.pm.orig 2007-12-18 10:47:07.000000000 +0000 ++++ ext/Sys/Syslog/Syslog.pm 2009-06-10 09:39:14.000000000 +0000 +@@ -741,7 +741,7 @@ sub connection_ok { + + my $rin = ''; + vec($rin, fileno(SYSLOG), 1) = 1; +- my $ret = select $rin, undef, $rin, 0.25; ++ my $ret = select $rin, undef, $rin, 0; + return ($ret ? 0 : 1); + } + diff --git a/perl-netcmdutf8.diff b/perl-netcmdutf8.diff new file mode 100644 index 0000000..91b96fb --- /dev/null +++ b/perl-netcmdutf8.diff @@ -0,0 +1,24 @@ +--- lib/Net/Cmd.pm.orig 2009-06-10 09:23:18.000000000 +0000 ++++ lib/Net/Cmd.pm 2009-06-10 09:25:49.000000000 +0000 +@@ -226,6 +226,10 @@ sub command { + $str = $cmd->toascii($str) if $tr; + $str .= "\015\012"; + ++ # encode to individual utf8 bytes if ++ # $str is a string (in internal UTF-8) ++ utf8::encode($str) if is_utf8($str); ++ + my $len = length $str; + my $swlen; + +@@ -471,6 +475,10 @@ sub rawdatasend { + + return 0 unless defined(fileno($cmd)); + ++ # encode to individual utf8 bytes if ++ # $line is a string (in internal UTF-8) ++ utf8::encode($line) if is_utf8($line); ++ + return 1 + unless length($line); + diff --git a/perl-zlib-growoob.diff b/perl-zlib-growoob.diff new file mode 100644 index 0000000..830d0e9 --- /dev/null +++ b/perl-zlib-growoob.diff @@ -0,0 +1,20 @@ +--- ./ext/Compress/Raw/Zlib/Zlib.xs.orig 2007-12-18 10:47:07.000000000 +0000 ++++ ./ext/Compress/Raw/Zlib/Zlib.xs 2009-06-10 09:11:57.000000000 +0000 +@@ -1295,7 +1295,7 @@ inflate (s, buf, output, eof=FALSE) + + if (s->stream.avail_out == 0 ) { + /* out of space in the output buffer so make it bigger */ +- Sv_Grow(output, SvLEN(output) + bufinc) ; ++ Sv_Grow(output, SvLEN(output) + bufinc + 1) ; + cur_length += increment ; + s->stream.next_out = (Bytef*) SvPVbyte_nolen(output) + cur_length ; + increment = bufinc ; +@@ -1336,7 +1336,7 @@ inflate (s, buf, output, eof=FALSE) + s->stream.avail_in = 1; + if (s->stream.avail_out == 0) { + /* out of space in the output buffer so make it bigger */ +- Sv_Grow(output, SvLEN(output) + bufinc) ; ++ Sv_Grow(output, SvLEN(output) + bufinc + 1) ; + cur_length += increment ; + s->stream.next_out = (Bytef*) SvPVbyte_nolen(output) + cur_length ; + increment = bufinc ; diff --git a/perl.changes b/perl.changes index e32f37e..abacd4e 100644 --- a/perl.changes +++ b/perl.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Wed Jun 10 11:46:53 CEST 2009 - mls@suse.de + +- fixed off-by-one in zlib inflate code [bnc#511241] +- fixed errorcount initialization [bnc#498425] +- fixed utf8 handling in Net::Cmd [bnc#493978] +- fixed performace degradation in syslog [bnc#489114] + ------------------------------------------------------------------- Wed Jan 14 15:58:56 CET 2009 - mls@suse.de diff --git a/perl.spec b/perl.spec index 439e538..91d4142 100644 --- a/perl.spec +++ b/perl.spec @@ -22,7 +22,7 @@ Name: perl Url: http://www.perl.org/ BuildRequires: db-devel gdbm-devel ncurses-devel zlib-devel Version: 5.10.0 -Release: 65 +Release: 67 Summary: The Perl interpreter License: Artistic License; GPL v2 or later Group: Development/Languages/Perl @@ -49,6 +49,10 @@ Patch5: perl-regexp-refoverflow.diff Patch6: perl-file_path_rmtree_chmod.diff Patch7: perl-file_path_rmtree_chmod_again.diff Patch8: perl-nroff.diff +Patch9: perl-zlib-growoob.diff +Patch10: perl-errorcount.diff +Patch11: perl-netcmdutf8.diff +Patch12: perl-fast-syslog.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -126,6 +130,10 @@ Authors: %patch6 %patch7 %patch8 +%patch9 +%patch10 +%patch11 +%patch12 %build options="-Doptimize='$RPM_OPT_FLAGS -Wall -pipe'" @@ -356,6 +364,11 @@ EOF %doc /usr/lib/perl5/*/unicore/*.txt %changelog +* Wed Jun 10 2009 mls@suse.de +- fixed off-by-one in zlib inflate code [bnc#511241] +- fixed errorcount initialization [bnc#498425] +- fixed utf8 handling in Net::Cmd [bnc#493978] +- fixed performace degradation in syslog [bnc#489114] * Wed Jan 14 2009 mls@suse.de - work around nroff change [bnc#463444] - fix another rmtree vulnerability [bnc#450385] @@ -646,14 +659,14 @@ EOF - Fixed for SPARC * Tue Nov 02 1999 ro@suse.de - do h2ph for stdarg and stddef (BUG#785) -* Mon Oct 18 1999 ro@suse.de +* Tue Oct 19 1999 ro@suse.de - don't print error if /usr/src/linux is not owned by a package (BUG#215) * Mon Sep 13 1999 bs@suse.de - ran old prepare_spec on spec file to switch to new prepare_spec. * Fri Aug 27 1999 ro@suse.de - added "gnu","net" and "rpc" to directories for h2ph -* Thu Jul 08 1999 ro@suse.de +* Fri Jul 09 1999 ro@suse.de - added "bits" to directories for h2ph (closing BUG 58) * Thu Jul 08 1999 ro@suse.de - fix for perldoc