Issued:
2012-02-20
Updated:
2012-02-20

RHBA-2012:0218 - ruby bug fix update


Synopsis

ruby bug fix update

Type/Severity

Bug Fix Advisory (none)

Topic

Updated ruby packages that fix several bugs are now available for Red Hat Enterprise Linux 5.

Description

Ruby is an extensible, interpreted, object-oriented, scripting language. It has features to process text files and to do system management tasks.

This update fixes the following bugs:

  • To identify the current working directory, the Ruby virtual machine used the path_check_0() function that recursed until it identified the respective absolute path. Previously, the function could cause the Ruby virtual machine to recurse infinitely and consume excessive memory. This happened if the environment path was broken as the getcwd() function failed to determine the full path of the current working directory. This update backports the non-recursive implementation of the path_check_0() function from Ruby 1.8.6, which relies on a series of macros, and the path_check_0() function returns the correct current working directory under these circumstances. (BZ#435631)

  • The ruby update released on 2009-07-02 as RHSA-2009:1140 included a fix for CVE-2009-1904. This fix introduced a regression which caused leading zeros after the decimal point in BigDecimal objects to be dropped. This could, potentially, lead to incorrect mathematical calculations. This update fixes this problem by ensuring that leading zeros following a decimal point in BigDecimal objects are not dropped. (BZ#510277)

  • Due to the missing "require 'rdoc/usage'" statement in the RI (Ruby Index) library, which is part of the ruby package, the Ruby virtual machine could raise the following exception:

    uninitialized constant RI::Paths (NameError)

This update adds the missing require statement to the ri_options.rb file of the RI library file and the problem no longer occurs. (BZ#445399)

  • The "Text::normalize" method included in the REXML (Regular Expressions XML) library, which is part of the Ruby standard library, did not work correctly for ampersand entities (&). With this update, the underlying "REXML::Text" class in the text.rb library has been modified and the ampersand characters are now normalized correctly. (BZ#577351)

All ruby users 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 This content is not included.https://access.redhat.com/kb/docs/DOC-11259

Affected Products

ProductVersionArch
Red Hat Enterprise Linux for Power, big endian5ppc
Red Hat Enterprise Linux for IBM z Systems5s390x
Red Hat Enterprise Linux Workstation5x86_64
Red Hat Enterprise Linux Workstation5i386
Red Hat Enterprise Linux Server5x86_64
Red Hat Enterprise Linux Server5ia64
Red Hat Enterprise Linux Server5i386
Red Hat Enterprise Linux Server from RHUI5x86_64
Red Hat Enterprise Linux Server from RHUI5i386
Red Hat Enterprise Linux Desktop5x86_64
Red Hat Enterprise Linux Desktop5i386

Updated Packages

  • ruby-mode-1.8.5-24.el5.s390x.rpm
  • ruby-devel-1.8.5-24.el5.x86_64.rpm
  • ruby-tcltk-1.8.5-24.el5.s390x.rpm
  • ruby-docs-1.8.5-24.el5.ia64.rpm
  • ruby-tcltk-1.8.5-24.el5.x86_64.rpm
  • ruby-irb-1.8.5-24.el5.ppc.rpm
  • ruby-libs-1.8.5-24.el5.ia64.rpm
  • ruby-devel-1.8.5-24.el5.s390x.rpm
  • ruby-irb-1.8.5-24.el5.x86_64.rpm
  • ruby-devel-1.8.5-24.el5.i386.rpm
  • ruby-libs-1.8.5-24.el5.ppc64.rpm
  • ruby-1.8.5-24.el5.ia64.rpm
  • ruby-rdoc-1.8.5-24.el5.s390x.rpm
  • ruby-libs-1.8.5-24.el5.x86_64.rpm
  • ruby-ri-1.8.5-24.el5.ppc.rpm
  • ruby-irb-1.8.5-24.el5.i386.rpm
  • ruby-1.8.5-24.el5.x86_64.rpm
  • ruby-libs-1.8.5-24.el5.i386.rpm
  • ruby-tcltk-1.8.5-24.el5.ppc.rpm
  • ruby-mode-1.8.5-24.el5.ppc.rpm
  • ruby-devel-1.8.5-24.el5.ia64.rpm
  • ruby-mode-1.8.5-24.el5.ia64.rpm
  • ruby-rdoc-1.8.5-24.el5.ia64.rpm
  • ruby-libs-1.8.5-24.el5.s390x.rpm
  • ruby-devel-1.8.5-24.el5.ppc64.rpm
  • ruby-rdoc-1.8.5-24.el5.i386.rpm
  • ruby-devel-1.8.5-24.el5.s390.rpm
  • ruby-docs-1.8.5-24.el5.s390x.rpm
  • ruby-1.8.5-24.el5.s390x.rpm
  • ruby-irb-1.8.5-24.el5.s390x.rpm
  • ruby-1.8.5-24.el5.i386.rpm
  • ruby-rdoc-1.8.5-24.el5.ppc.rpm
  • ruby-ri-1.8.5-24.el5.ia64.rpm
  • ruby-devel-1.8.5-24.el5.ppc.rpm
  • ruby-tcltk-1.8.5-24.el5.i386.rpm
  • ruby-1.8.5-24.el5.src.rpm
  • ruby-1.8.5-24.el5.ppc.rpm
  • ruby-ri-1.8.5-24.el5.i386.rpm
  • ruby-docs-1.8.5-24.el5.ppc.rpm
  • ruby-mode-1.8.5-24.el5.i386.rpm
  • ruby-tcltk-1.8.5-24.el5.ia64.rpm
  • ruby-mode-1.8.5-24.el5.x86_64.rpm
  • ruby-ri-1.8.5-24.el5.s390x.rpm
  • ruby-docs-1.8.5-24.el5.x86_64.rpm
  • ruby-docs-1.8.5-24.el5.i386.rpm
  • ruby-ri-1.8.5-24.el5.x86_64.rpm
  • ruby-rdoc-1.8.5-24.el5.x86_64.rpm
  • ruby-libs-1.8.5-24.el5.ppc.rpm
  • ruby-irb-1.8.5-24.el5.ia64.rpm
  • ruby-libs-1.8.5-24.el5.s390.rpm

Fixes

CVEs

(none)

References

(none)


Additional information