- Issued:
- 2012-02-20
- Updated:
- 2012-02-20
RHBA-2012:0199 - Bug Fix Advisory
Synopsis
perl bug fix update
Type/Severity
Bug Fix Advisory
Red Hat Insights patch analysis
Identify and remediate systems affected by this advisory.
Topic
Updated perl packages that fix several bugs are now available for Red Hat
Enterprise Linux 5.
Description
Perl is a high-level programming language commonly used for system
administration utilities and web programming.
This update fixes the following bugs:
- Due to an error in the threads module, memory was leaked each time a thread
was detached. Over time, this could cause long-running threaded Perl programs to
consume a significant amount of memory. With this update, a patch has been
applied to ensure the allocated memory is properly freed when a thread is
detached, and using threads in Perl applications no longer causes memory leaks.
(BZ#548249)
- If the "-default" parameter contained a plus sign ("+"), the CGI::popup_menu()
method failed to generate valid HTML code and the closing tag of a paired tag
was sometimes missing. The regular expression that contributes the HTML code in
such scenarios has been fixed and the closing tag is now always present.
(BZ#523827)
- Previously, joining or undefining a thread variable in a Perl script resulted
in the following error message: "Attempt to free unreferenced scalar: SV
0x7b7dcb0, Perl interpreter: 0x7b4cfb0 during global destruction." A backported
upstream patch has been provided and the internal error is no longer returned in
the described scenario. (BZ#537777)
- Previously, the CGI::popup_menu() method generated invalid HTML code; a space
character was sometimes missing between two attributes of a tag. With this
update, the regular expression responsible for generating such code has been
fixed and the space characters are now properly generated in the described
scenario. (BZ#590644)
- When threads were being rapidly created and detached on a multi-processor
system with Perl, a variety of unexpected terminations occurred as a result.
With this update, the threads module has been updated to version 1.79 and the
crashes no longer occur. (BZ#675863)
- Previously, the NDBM_File module was missing in Perl packages and Perl could
not provide support for NDBM files. With this update, NDBM_File has been added
back to the Perl RPM packages. (BZ#593752)
- Previously, string evaluation in Perl threads sometimes resulted in an
unexpected termination of the process. To partially fix this bug, handling of
these strings has been moved to non-threaded variables. The update of the
threads module to version 1.79 also contributed to the fix of this bug. Now, the
crashes no longer occur in the described scenario. (BZ#676050)
- Due to a missing definition in Unicode table 4.0, Perl did not recognize the
small letter Palochka (U+04cf). With this update, the Unicode table has been
updated to version 5.0.1 and Palochka letters are now supported in Perl.
(BZ#621542)
- When two nested loops were using the same iterator, the interpreter tried to
double-free the iterator, resulting in a warning. Moreover, referring such an
iterator caused the "Attempt to free unreferenced scalar" run-time error message
to be returned. A backported patch from Perl 5.10.1 has been applied to handle
shared iterators properly and no warnings or error messages are now returned in
the described scenario. (BZ#625746)
- Previously, the value of a variable used for string evaluation was too small.
Consequently, a large number of string evaluations made the interpreter return
syntax error messages. Now, the variable for storing strings is using a bigger
value and the error messages are no longer returned in the described scenario.
(BZ#676547)
Users of perl are advised to upgrade to these updated packages, which fix these
bugs.
Solution
Before applying this update, make sure all previously-released errata
relevant to your system have been applied.
This update is available via the Red Hat Network. Details on how to
use the Red Hat Network to apply this update are available at
https://access.redhat.com/kb/docs/DOC-11259
Affected Products
- Red Hat Enterprise Linux Server 5 x86_64
- Red Hat Enterprise Linux Server 5 ia64
- Red Hat Enterprise Linux Server 5 i386
- Red Hat Enterprise Linux Workstation 5 x86_64
- Red Hat Enterprise Linux Workstation 5 i386
- Red Hat Enterprise Linux Desktop 5 x86_64
- Red Hat Enterprise Linux Desktop 5 i386
- Red Hat Enterprise Linux for IBM z Systems 5 s390x
- Red Hat Enterprise Linux for Power, big endian 5 ppc
- Red Hat Enterprise Linux Server from RHUI 5 x86_64
- Red Hat Enterprise Linux Server from RHUI 5 i386
Fixes
- BZ - 523827 - CGI.pm popup_menu if optgroup, $selected is not properly escaped.
- BZ - 537777 - 'Attempt to free unreferenced scalar' when running a perl program with threads
- BZ - 548249 - Perl threads leak memory when detached
- BZ - 590644 - CGI.pm popup_menu produces invalid HTML
- BZ - 621542 - perl does not recognize small letter palochka
- BZ - 625746 - Perl gives the error 'Attempt to free unreferenced scalar' with nested foreach loops using the same variable
- BZ - 675863 - memory corruption with perl threads
- BZ - 676050 - perl threads crash on string evals
- BZ - 676547 - Large number of string evals makes interpreter emit syntax error [perl #83364]
CVEs
(none)
References
(none)
Red Hat Enterprise Linux Server 5
SRPM | |
---|---|
perl-5.8.8-38.el5.src.rpm | SHA-256: f0746c52aad3b58b12c07909bce8406d7056a587adeab28cb105bcd2f5bf1d74 |
x86_64 | |
perl-5.8.8-38.el5.x86_64.rpm | SHA-256: 315902d05f376e9fec048fdf5cc3197e2af72ff0e7b08afb45698059603d5a79 |
perl-suidperl-5.8.8-38.el5.x86_64.rpm | SHA-256: a72ecf081d3cac664c22814592bd4b2f9ad13f8c3d7b334407d3f2372a8b07f6 |
ia64 | |
perl-5.8.8-38.el5.ia64.rpm | SHA-256: 15eb28fccd384cf6bce3baed6804caa6546909fc7c05b7423be8b788de60b15b |
perl-suidperl-5.8.8-38.el5.ia64.rpm | SHA-256: f1595738c164b39f7b72a5ce4baa37fd6111a2d707b6825f6d5a96d5cb7e0bc6 |
i386 | |
perl-5.8.8-38.el5.i386.rpm | SHA-256: cc87a24ff5097e0f3b05cd5c6c319a8e33f2b39eb77a37f390c06f677b803617 |
perl-suidperl-5.8.8-38.el5.i386.rpm | SHA-256: 25ac0a63729b8a092a4b68a8b1a966693273a7b1c8a529daeed39807faadd8e5 |
Red Hat Enterprise Linux Workstation 5
SRPM | |
---|---|
perl-5.8.8-38.el5.src.rpm | SHA-256: f0746c52aad3b58b12c07909bce8406d7056a587adeab28cb105bcd2f5bf1d74 |
x86_64 | |
perl-5.8.8-38.el5.i386.rpm | SHA-256: cc87a24ff5097e0f3b05cd5c6c319a8e33f2b39eb77a37f390c06f677b803617 |
perl-5.8.8-38.el5.x86_64.rpm | SHA-256: 315902d05f376e9fec048fdf5cc3197e2af72ff0e7b08afb45698059603d5a79 |
perl-suidperl-5.8.8-38.el5.x86_64.rpm | SHA-256: a72ecf081d3cac664c22814592bd4b2f9ad13f8c3d7b334407d3f2372a8b07f6 |
i386 | |
perl-5.8.8-38.el5.i386.rpm | SHA-256: cc87a24ff5097e0f3b05cd5c6c319a8e33f2b39eb77a37f390c06f677b803617 |
perl-suidperl-5.8.8-38.el5.i386.rpm | SHA-256: 25ac0a63729b8a092a4b68a8b1a966693273a7b1c8a529daeed39807faadd8e5 |
Red Hat Enterprise Linux Desktop 5
SRPM | |
---|---|
perl-5.8.8-38.el5.src.rpm | SHA-256: f0746c52aad3b58b12c07909bce8406d7056a587adeab28cb105bcd2f5bf1d74 |
x86_64 | |
perl-5.8.8-38.el5.i386.rpm | SHA-256: cc87a24ff5097e0f3b05cd5c6c319a8e33f2b39eb77a37f390c06f677b803617 |
perl-5.8.8-38.el5.x86_64.rpm | SHA-256: 315902d05f376e9fec048fdf5cc3197e2af72ff0e7b08afb45698059603d5a79 |
perl-suidperl-5.8.8-38.el5.x86_64.rpm | SHA-256: a72ecf081d3cac664c22814592bd4b2f9ad13f8c3d7b334407d3f2372a8b07f6 |
i386 | |
perl-5.8.8-38.el5.i386.rpm | SHA-256: cc87a24ff5097e0f3b05cd5c6c319a8e33f2b39eb77a37f390c06f677b803617 |
perl-suidperl-5.8.8-38.el5.i386.rpm | SHA-256: 25ac0a63729b8a092a4b68a8b1a966693273a7b1c8a529daeed39807faadd8e5 |
Red Hat Enterprise Linux for IBM z Systems 5
SRPM | |
---|---|
perl-5.8.8-38.el5.src.rpm | SHA-256: f0746c52aad3b58b12c07909bce8406d7056a587adeab28cb105bcd2f5bf1d74 |
s390x | |
perl-5.8.8-38.el5.s390x.rpm | SHA-256: 740a1ef7ca61e9db4b51ca1e8bd1afc0fd819b09333f77699da5c5fde0bec0d7 |
perl-suidperl-5.8.8-38.el5.s390x.rpm | SHA-256: 2663a8e6f086f54906d666b8f08d0f735b134e427fa844cdfb652ae6cf85acb0 |
Red Hat Enterprise Linux for Power, big endian 5
SRPM | |
---|---|
perl-5.8.8-38.el5.src.rpm | SHA-256: f0746c52aad3b58b12c07909bce8406d7056a587adeab28cb105bcd2f5bf1d74 |
ppc | |
perl-5.8.8-38.el5.ppc.rpm | SHA-256: 7ce397d1e9cdf4017f0328f3d08bdc047d363f58137a6f159db6ddc43a235bce |
perl-suidperl-5.8.8-38.el5.ppc.rpm | SHA-256: fba303e15a1877e2529ae660c6ab0ce3113351d7e8f77029c731e87be7b9cfed |
Red Hat Enterprise Linux Server from RHUI 5
SRPM | |
---|---|
perl-5.8.8-38.el5.src.rpm | SHA-256: f0746c52aad3b58b12c07909bce8406d7056a587adeab28cb105bcd2f5bf1d74 |
x86_64 | |
perl-5.8.8-38.el5.x86_64.rpm | SHA-256: 315902d05f376e9fec048fdf5cc3197e2af72ff0e7b08afb45698059603d5a79 |
perl-suidperl-5.8.8-38.el5.x86_64.rpm | SHA-256: a72ecf081d3cac664c22814592bd4b2f9ad13f8c3d7b334407d3f2372a8b07f6 |
i386 | |
perl-5.8.8-38.el5.i386.rpm | SHA-256: cc87a24ff5097e0f3b05cd5c6c319a8e33f2b39eb77a37f390c06f677b803617 |
perl-suidperl-5.8.8-38.el5.i386.rpm | SHA-256: 25ac0a63729b8a092a4b68a8b1a966693273a7b1c8a529daeed39807faadd8e5 |
The Red Hat security contact is secalert@redhat.com. More contact details at https://access.redhat.com/security/team/contact/.