-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

===========================================================================
             AUSCERT External Security Bulletin Redistribution

                              ESB-2011.0037.2
                   Low: gcc security and bug fix update
                              14 January 2011

===========================================================================

        AusCERT Security Bulletin Summary
        ---------------------------------

Product:           gcc
Publisher:         Red Hat
Operating System:  Red Hat Enterprise Linux Server 5
                   Red Hat Enterprise Linux WS/Desktop 5
                   UNIX variants (UNIX, Linux, OSX)
Impact/Access:     Overwrite Arbitrary Files -- Existing Account
Resolution:        Patch/Upgrade
CVE Names:         CVE-2010-2322 CVE-2010-0831 

Original Bulletin: 
   https://rhn.redhat.com/errata/RHSA-2011-0025.html

Revision History:  January 14 2011: Minor correction
                   January 14 2011: Initial Release

- --------------------------BEGIN INCLUDED TEXT--------------------

- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

=====================================================================
                   Red Hat Security Advisory

Synopsis:          Low: gcc security and bug fix update
Advisory ID:       RHSA-2011:0025-01
Product:           Red Hat Enterprise Linux
Advisory URL:      https://rhn.redhat.com/errata/RHSA-2011-0025.html
Issue date:        2011-01-13
CVE Names:         CVE-2010-0831 CVE-2010-2322 
=====================================================================

1. Summary:

Updated gcc packages that fix two security issues and several compiler bugs
are now available for Red Hat Enterprise Linux 5.

The Red Hat Security Response Team has rated this update as having low
security impact. Common Vulnerability Scoring System (CVSS) base scores,
which give detailed severity ratings, are available for each vulnerability
from the CVE links in the References section.

2. Relevant releases/architectures:

RHEL Desktop Workstation (v. 5 client) - i386, x86_64
Red Hat Enterprise Linux (v. 5 server) - i386, ia64, ppc, s390x, x86_64
Red Hat Enterprise Linux Desktop (v. 5 client) - i386, x86_64

3. Description:

The gcc packages include C, C++, Java, Fortran, Objective C, and Ada 95 GNU
compilers, along with related support libraries. The libgcj package
provides fastjar, an archive tool for Java Archive (JAR) files.

Two directory traversal flaws were found in the way fastjar extracted JAR
archive files. If a local, unsuspecting user extracted a specially-crafted
JAR file, it could cause fastjar to overwrite arbitrary files writable by
the user running fastjar. (CVE-2010-0831, CVE-2010-2322)

This update also fixes the following bugs:

* The option -print-multi-os-directory in the gcc --help output is not in
the gcc(1) man page. This update applies an upstream patch to amend this.
(BZ#529659)

* An internal assertion in the compiler tried to check that a C++ static
data member is external which resulted in errors. This was because when the
compiler optimizes C++ anonymous namespaces the declarations were no longer
marked external as everything on anonymous namespaces is local to the
current translation. This update corrects the assertion to resolve this
issue. (BZ#503565, BZ#508735, BZ#582682)

* Attempting to compile certain .cpp files could have resulted in an
internal compiler error. This update resolves this issue. (BZ#527510)

* PrintServiceLookup.lookupPrintServices with an appropriate DocFlavor
failed to return a list of printers under gcj. This update includes a
backported patch to correct this bug in the printer lookup service.
(BZ#578382)

* GCC would not build against xulrunner-devel-1.9.2. This update removes
gcjwebplugin from the GCC RPM. (BZ#596097)

* When a SystemTap generated kernel module was compiled, gcc reported an
internal compiler error and gets a segmentation fault. This update applies
a patch that, instead of crashing, assumes it can point to anything.
(BZ#605803)

* There was a performance issue with libstdc++ regarding all objects
derived from or using std::streambuf because of lock contention between
threads. This patch ensures reload uses the same value from _S_global for
the comparison, _M_add_reference () and _M_impl member of the class.
(BZ#635708)

All gcc users should upgrade to these updated packages, which contain
backported patches to correct these issues.

4. 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
http://kbase.redhat.com/faq/docs/DOC-11259

5. Bugs fixed (http://bugzilla.redhat.com/):

503565 - libtorrent-rasterbar won't compile, internal compiler error: in make_rtl_for_nonlocal_decl
508735 - internal gcc error
527510 - Internal compiler error from gcc
529659 - Option -print-multi-os-directory is not described in man page gcc(1)
578382 - PrintServiceLookup.lookupPrintServices(DocFlavor.SERVICE_FORMATTED.PAGEABLE, null)   in a simple test java program fails to list printers when run with gcj - Any conventional JRE seems to work that I have tested
582682 - internal compiler error: in make_rtl_for_nonlocal_decl
594497 - CVE-2010-0831 CVE-2010-2322 fastjar: directory traversal vulnerabilities
596097 - gcc doesn't build against xulrunner-devel-1.9.2
605803 - gcc gets an internal compiler error when compiling a kernel module
635708 - Huge performance problem with libstdc++ and multithread applications

6. Package List:

Red Hat Enterprise Linux Desktop (v. 5 client):

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/SRPMS/gcc-4.1.2-50.el5.src.rpm

i386:
cpp-4.1.2-50.el5.i386.rpm
gcc-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
libgcc-4.1.2-50.el5.i386.rpm
libgcj-4.1.2-50.el5.i386.rpm
libgfortran-4.1.2-50.el5.i386.rpm
libgnat-4.1.2-50.el5.i386.rpm
libmudflap-4.1.2-50.el5.i386.rpm
libobjc-4.1.2-50.el5.i386.rpm
libstdc++-4.1.2-50.el5.i386.rpm

x86_64:
cpp-4.1.2-50.el5.x86_64.rpm
gcc-4.1.2-50.el5.x86_64.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.x86_64.rpm
libgcc-4.1.2-50.el5.i386.rpm
libgcc-4.1.2-50.el5.x86_64.rpm
libgcj-4.1.2-50.el5.i386.rpm
libgcj-4.1.2-50.el5.x86_64.rpm
libgfortran-4.1.2-50.el5.i386.rpm
libgfortran-4.1.2-50.el5.x86_64.rpm
libgnat-4.1.2-50.el5.i386.rpm
libgnat-4.1.2-50.el5.x86_64.rpm
libmudflap-4.1.2-50.el5.i386.rpm
libmudflap-4.1.2-50.el5.x86_64.rpm
libobjc-4.1.2-50.el5.i386.rpm
libobjc-4.1.2-50.el5.x86_64.rpm
libstdc++-4.1.2-50.el5.i386.rpm
libstdc++-4.1.2-50.el5.x86_64.rpm

RHEL Desktop Workstation (v. 5 client):

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/SRPMS/gcc-4.1.2-50.el5.src.rpm

i386:
gcc-c++-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
gcc-gfortran-4.1.2-50.el5.i386.rpm
gcc-gnat-4.1.2-50.el5.i386.rpm
gcc-java-4.1.2-50.el5.i386.rpm
gcc-objc++-4.1.2-50.el5.i386.rpm
gcc-objc-4.1.2-50.el5.i386.rpm
libgcj-devel-4.1.2-50.el5.i386.rpm
libgcj-src-4.1.2-50.el5.i386.rpm
libmudflap-devel-4.1.2-50.el5.i386.rpm
libstdc++-devel-4.1.2-50.el5.i386.rpm

x86_64:
gcc-c++-4.1.2-50.el5.x86_64.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.x86_64.rpm
gcc-gfortran-4.1.2-50.el5.x86_64.rpm
gcc-gnat-4.1.2-50.el5.x86_64.rpm
gcc-java-4.1.2-50.el5.x86_64.rpm
gcc-objc++-4.1.2-50.el5.x86_64.rpm
gcc-objc-4.1.2-50.el5.x86_64.rpm
libgcj-devel-4.1.2-50.el5.i386.rpm
libgcj-devel-4.1.2-50.el5.x86_64.rpm
libgcj-src-4.1.2-50.el5.x86_64.rpm
libmudflap-devel-4.1.2-50.el5.i386.rpm
libmudflap-devel-4.1.2-50.el5.x86_64.rpm
libstdc++-devel-4.1.2-50.el5.i386.rpm
libstdc++-devel-4.1.2-50.el5.x86_64.rpm

Red Hat Enterprise Linux (v. 5 server):

Source:
ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/gcc-4.1.2-50.el5.src.rpm

i386:
cpp-4.1.2-50.el5.i386.rpm
gcc-4.1.2-50.el5.i386.rpm
gcc-c++-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
gcc-gfortran-4.1.2-50.el5.i386.rpm
gcc-gnat-4.1.2-50.el5.i386.rpm
gcc-java-4.1.2-50.el5.i386.rpm
gcc-objc++-4.1.2-50.el5.i386.rpm
gcc-objc-4.1.2-50.el5.i386.rpm
libgcc-4.1.2-50.el5.i386.rpm
libgcj-4.1.2-50.el5.i386.rpm
libgcj-devel-4.1.2-50.el5.i386.rpm
libgcj-src-4.1.2-50.el5.i386.rpm
libgfortran-4.1.2-50.el5.i386.rpm
libgnat-4.1.2-50.el5.i386.rpm
libmudflap-4.1.2-50.el5.i386.rpm
libmudflap-devel-4.1.2-50.el5.i386.rpm
libobjc-4.1.2-50.el5.i386.rpm
libstdc++-4.1.2-50.el5.i386.rpm
libstdc++-devel-4.1.2-50.el5.i386.rpm

ia64:
cpp-4.1.2-50.el5.ia64.rpm
gcc-4.1.2-50.el5.ia64.rpm
gcc-c++-4.1.2-50.el5.ia64.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.ia64.rpm
gcc-gfortran-4.1.2-50.el5.ia64.rpm
gcc-gnat-4.1.2-50.el5.ia64.rpm
gcc-java-4.1.2-50.el5.ia64.rpm
gcc-objc++-4.1.2-50.el5.ia64.rpm
gcc-objc-4.1.2-50.el5.ia64.rpm
libgcc-4.1.2-50.el5.i386.rpm
libgcc-4.1.2-50.el5.ia64.rpm
libgcj-4.1.2-50.el5.ia64.rpm
libgcj-devel-4.1.2-50.el5.ia64.rpm
libgcj-src-4.1.2-50.el5.ia64.rpm
libgfortran-4.1.2-50.el5.ia64.rpm
libgnat-4.1.2-50.el5.i386.rpm
libgnat-4.1.2-50.el5.ia64.rpm
libmudflap-4.1.2-50.el5.ia64.rpm
libmudflap-devel-4.1.2-50.el5.ia64.rpm
libobjc-4.1.2-50.el5.i386.rpm
libobjc-4.1.2-50.el5.ia64.rpm
libstdc++-4.1.2-50.el5.i386.rpm
libstdc++-4.1.2-50.el5.ia64.rpm
libstdc++-devel-4.1.2-50.el5.ia64.rpm

ppc:
cpp-4.1.2-50.el5.ppc.rpm
gcc-4.1.2-50.el5.ppc.rpm
gcc-c++-4.1.2-50.el5.ppc.rpm
gcc-debuginfo-4.1.2-50.el5.ppc.rpm
gcc-debuginfo-4.1.2-50.el5.ppc64.rpm
gcc-gfortran-4.1.2-50.el5.ppc.rpm
gcc-java-4.1.2-50.el5.ppc.rpm
gcc-objc++-4.1.2-50.el5.ppc.rpm
gcc-objc-4.1.2-50.el5.ppc.rpm
libgcc-4.1.2-50.el5.ppc.rpm
libgcc-4.1.2-50.el5.ppc64.rpm
libgcj-4.1.2-50.el5.ppc.rpm
libgcj-4.1.2-50.el5.ppc64.rpm
libgcj-devel-4.1.2-50.el5.ppc.rpm
libgcj-devel-4.1.2-50.el5.ppc64.rpm
libgcj-src-4.1.2-50.el5.ppc.rpm
libgfortran-4.1.2-50.el5.ppc.rpm
libgfortran-4.1.2-50.el5.ppc64.rpm
libmudflap-4.1.2-50.el5.ppc.rpm
libmudflap-4.1.2-50.el5.ppc64.rpm
libmudflap-devel-4.1.2-50.el5.ppc.rpm
libmudflap-devel-4.1.2-50.el5.ppc64.rpm
libobjc-4.1.2-50.el5.ppc.rpm
libobjc-4.1.2-50.el5.ppc64.rpm
libstdc++-4.1.2-50.el5.ppc.rpm
libstdc++-4.1.2-50.el5.ppc64.rpm
libstdc++-devel-4.1.2-50.el5.ppc.rpm
libstdc++-devel-4.1.2-50.el5.ppc64.rpm

s390x:
cpp-4.1.2-50.el5.s390x.rpm
gcc-4.1.2-50.el5.s390x.rpm
gcc-c++-4.1.2-50.el5.s390x.rpm
gcc-debuginfo-4.1.2-50.el5.s390.rpm
gcc-debuginfo-4.1.2-50.el5.s390x.rpm
gcc-gfortran-4.1.2-50.el5.s390x.rpm
gcc-java-4.1.2-50.el5.s390x.rpm
gcc-objc++-4.1.2-50.el5.s390x.rpm
gcc-objc-4.1.2-50.el5.s390x.rpm
libgcc-4.1.2-50.el5.s390.rpm
libgcc-4.1.2-50.el5.s390x.rpm
libgcj-4.1.2-50.el5.s390.rpm
libgcj-4.1.2-50.el5.s390x.rpm
libgcj-devel-4.1.2-50.el5.s390.rpm
libgcj-devel-4.1.2-50.el5.s390x.rpm
libgcj-src-4.1.2-50.el5.s390x.rpm
libgfortran-4.1.2-50.el5.s390.rpm
libgfortran-4.1.2-50.el5.s390x.rpm
libmudflap-4.1.2-50.el5.s390.rpm
libmudflap-4.1.2-50.el5.s390x.rpm
libmudflap-devel-4.1.2-50.el5.s390.rpm
libmudflap-devel-4.1.2-50.el5.s390x.rpm
libobjc-4.1.2-50.el5.s390.rpm
libobjc-4.1.2-50.el5.s390x.rpm
libstdc++-4.1.2-50.el5.s390.rpm
libstdc++-4.1.2-50.el5.s390x.rpm
libstdc++-devel-4.1.2-50.el5.s390.rpm
libstdc++-devel-4.1.2-50.el5.s390x.rpm

x86_64:
cpp-4.1.2-50.el5.x86_64.rpm
gcc-4.1.2-50.el5.x86_64.rpm
gcc-c++-4.1.2-50.el5.x86_64.rpm
gcc-debuginfo-4.1.2-50.el5.i386.rpm
gcc-debuginfo-4.1.2-50.el5.x86_64.rpm
gcc-gfortran-4.1.2-50.el5.x86_64.rpm
gcc-gnat-4.1.2-50.el5.x86_64.rpm
gcc-java-4.1.2-50.el5.x86_64.rpm
gcc-objc++-4.1.2-50.el5.x86_64.rpm
gcc-objc-4.1.2-50.el5.x86_64.rpm
libgcc-4.1.2-50.el5.i386.rpm
libgcc-4.1.2-50.el5.x86_64.rpm
libgcj-4.1.2-50.el5.i386.rpm
libgcj-4.1.2-50.el5.x86_64.rpm
libgcj-devel-4.1.2-50.el5.i386.rpm
libgcj-devel-4.1.2-50.el5.x86_64.rpm
libgcj-src-4.1.2-50.el5.x86_64.rpm
libgfortran-4.1.2-50.el5.i386.rpm
libgfortran-4.1.2-50.el5.x86_64.rpm
libgnat-4.1.2-50.el5.i386.rpm
libgnat-4.1.2-50.el5.x86_64.rpm
libmudflap-4.1.2-50.el5.i386.rpm
libmudflap-4.1.2-50.el5.x86_64.rpm
libmudflap-devel-4.1.2-50.el5.i386.rpm
libmudflap-devel-4.1.2-50.el5.x86_64.rpm
libobjc-4.1.2-50.el5.i386.rpm
libobjc-4.1.2-50.el5.x86_64.rpm
libstdc++-4.1.2-50.el5.i386.rpm
libstdc++-4.1.2-50.el5.x86_64.rpm
libstdc++-devel-4.1.2-50.el5.i386.rpm
libstdc++-devel-4.1.2-50.el5.x86_64.rpm

These packages are GPG signed by Red Hat for security.  Our key and 
details on how to verify the signature are available from
https://access.redhat.com/security/team/key/#package

7. References:

https://www.redhat.com/security/data/cve/CVE-2010-0831.html
https://www.redhat.com/security/data/cve/CVE-2010-2322.html
https://access.redhat.com/security/updates/classification/#low

8. Contact:

The Red Hat security contact is <secalert@redhat.com>.  More contact
details at https://www.redhat.com/security/team/contact/

Copyright 2011 Red Hat, Inc.
- -----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.4 (GNU/Linux)

iD8DBQFNLuECXlSAg2UNWIIRAuMeAKCqukEJPNB03goL4dQwWAoraCwLbACfYuzW
KG8veFn1SuGfbJ5DIKqj7+I=
=3oBt
- -----END PGP SIGNATURE-----

- --------------------------END INCLUDED TEXT--------------------

You have received this e-mail bulletin as a result of your organisation's
registration with AusCERT. The mailing list you are subscribed to is
maintained within your organisation, so if you do not wish to continue
receiving these bulletins you should contact your local IT manager. If
you do not know who that is, please send an email to auscert@auscert.org.au
and we will forward your request to the appropriate person.

NOTE: Third Party Rights
This security bulletin is provided as a service to AusCERT's members.  As
AusCERT did not write the document quoted above, AusCERT has had no control
over its content. The decision to follow or act on information or advice
contained in this security bulletin is the responsibility of each user or
organisation, and should be considered in accordance with your organisation's
site policies and procedures. AusCERT takes no responsibility for consequences
which may arise from following or acting on information or advice contained in
this security bulletin.

NOTE: This is only the original release of the security bulletin.  It may
not be updated when updates to the original are made.  If downloading at
a later date, it is recommended that the bulletin is retrieved directly
from the author's website to ensure that the information is still current.

Contact information for the authors of the original document is included
in the Security Bulletin above.  If you have any questions or need further
information, please contact them directly.

Previous advisories and external security bulletins can be retrieved from:

        http://www.auscert.org.au/render.html?cid=1980

===========================================================================
Australian Computer Emergency Response Team
The University of Queensland
Brisbane
Qld 4072

Internet Email: auscert@auscert.org.au
Facsimile:      (07) 3365 7031
Telephone:      (07) 3365 4417 (International: +61 7 3365 4417)
                AusCERT personnel answer during Queensland business hours
                which are GMT+10:00 (AEST).
                On call after hours for member emergencies only.
===========================================================================
-----BEGIN PGP SIGNATURE-----
Comment: http://www.auscert.org.au/render.html?it=1967

iD8DBQFNL4/G/iFOrG6YcBERAnvjAKCkA/tJUwLPsP1iK1jy1JixhvR4MQCdEcdE
yEMDC0RkLJqEa6x4fhUNrT8=
=QoJJ
-----END PGP SIGNATURE-----