summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2006-11-07 15:42:41 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2006-11-07 15:42:41 +0000
commit1e8d609d5255749f1d50a79bd04baebef66a5717 (patch)
treebfff8653a377a11030c5f65a8f2e5052d4a07b6b /dev-lang
parentUpdated eclass to only display information about how to run the mod when it a... (diff)
downloadgentoo-2-1e8d609d5255749f1d50a79bd04baebef66a5717.tar.gz
gentoo-2-1e8d609d5255749f1d50a79bd04baebef66a5717.tar.bz2
gentoo-2-1e8d609d5255749f1d50a79bd04baebef66a5717.zip
Revision bump adding the patch for CVE-2006-5467. See bug #153497.
(Portage version: 2.1.2_rc1-r4)
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/ruby/ChangeLog8
-rw-r--r--dev-lang/ruby/files/digest-ruby-1.8.5-r36
-rw-r--r--dev-lang/ruby/files/ruby-1.8.5-cgi-dos-1.patch11
-rw-r--r--dev-lang/ruby/ruby-1.8.5-r3.ebuild142
4 files changed, 166 insertions, 1 deletions
diff --git a/dev-lang/ruby/ChangeLog b/dev-lang/ruby/ChangeLog
index eccb833864e2..06ad1b06ebc5 100644
--- a/dev-lang/ruby/ChangeLog
+++ b/dev-lang/ruby/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-lang/ruby
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.229 2006/11/07 15:29:21 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.230 2006/11/07 15:42:41 flameeyes Exp $
+
+*ruby-1.8.5-r3 (07 Nov 2006)
+
+ 07 Nov 2006; Diego Pettenò <flameeyes@gentoo.org>
+ +files/ruby-1.8.5-cgi-dos-1.patch, +ruby-1.8.5-r3.ebuild:
+ Revision bump adding the patch for CVE-2006-5467. See bug #153497.
07 Nov 2006; Diego Pettenò <flameeyes@gentoo.org> ruby-1.8.4-r3.ebuild,
ruby-1.8.5.ebuild, ruby-1.8.5-r1.ebuild, ruby-1.8.5-r2.ebuild:
diff --git a/dev-lang/ruby/files/digest-ruby-1.8.5-r3 b/dev-lang/ruby/files/digest-ruby-1.8.5-r3
new file mode 100644
index 000000000000..55d88e714851
--- /dev/null
+++ b/dev-lang/ruby/files/digest-ruby-1.8.5-r3
@@ -0,0 +1,6 @@
+MD5 b3b6b2d2f77f1f485d055d74f6eb6f2a onigd2_5_4.tar.gz 212280
+RMD160 6f694c6cf12f803d0bc608f493789c92c3cbcf68 onigd2_5_4.tar.gz 212280
+SHA256 cd4b4177633e8e42e34c26e3f41b0b9bccf747dc51d72a38943fef9cbc0eaa7b onigd2_5_4.tar.gz 212280
+MD5 3fbb02294a8ca33d4684055adba5ed6f ruby-1.8.5.tar.gz 4438603
+RMD160 991899146c23c9ea30ac09f41b7077fa0c8686b6 ruby-1.8.5.tar.gz 4438603
+SHA256 19590e972b80333e26a6514c34d976c2037138361481a16f27b75e5d33f33a58 ruby-1.8.5.tar.gz 4438603
diff --git a/dev-lang/ruby/files/ruby-1.8.5-cgi-dos-1.patch b/dev-lang/ruby/files/ruby-1.8.5-cgi-dos-1.patch
new file mode 100644
index 000000000000..a563c651cea4
--- /dev/null
+++ b/dev-lang/ruby/files/ruby-1.8.5-cgi-dos-1.patch
@@ -0,0 +1,11 @@
+--- lib/cgi.rb.orig 2006-08-22 18:38:19.000000000 +0900
++++ lib/cgi.rb 2006-11-03 00:18:53.000000000 +0900
+@@ -1018,7 +1018,7 @@ class CGI
+ else
+ stdinput.read(content_length)
+ end
+- if c.nil?
++ if c.nil? || c.empty?
+ raise EOFError, "bad content body"
+ end
+ buf.concat(c)
diff --git a/dev-lang/ruby/ruby-1.8.5-r3.ebuild b/dev-lang/ruby/ruby-1.8.5-r3.ebuild
new file mode 100644
index 000000000000..2c41ffe693ad
--- /dev/null
+++ b/dev-lang/ruby/ruby-1.8.5-r3.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.5-r3.ebuild,v 1.1 2006/11/07 15:42:41 flameeyes Exp $
+
+WANT_AUTOCONF="latest"
+WANT_AUTOMAKE="latest"
+
+ONIGURUMA="onigd2_5_4"
+
+inherit flag-o-matic alternatives eutils multilib autotools
+
+DESCRIPTION="An object-oriented scripting language"
+HOMEPAGE="http://www.ruby-lang.org/"
+SRC_URI="ftp://ftp.ruby-lang.org/pub/ruby/${P}.tar.gz
+ cjk? ( http://www.geocities.jp/kosako3/oniguruma/archive/${ONIGURUMA}.tar.gz )"
+
+LICENSE="Ruby"
+SLOT="1.8"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE="debug socks5 tk cjk doc threads examples ipv6"
+RESTRICT="confcache"
+
+RDEPEND=">=sys-libs/gdbm-1.8.0
+ >=sys-libs/readline-4.1
+ >=sys-libs/ncurses-5.2
+ socks5? ( >=net-proxy/dante-1.1.13 )
+ tk? ( dev-lang/tk )
+ >=dev-ruby/ruby-config-0.3
+ !=dev-lang/ruby-cvs-1.8*
+ !dev-ruby/rdoc
+ !dev-ruby/rexml"
+DEPEND="${RDEPEND}"
+PROVIDE="virtual/ruby"
+
+S=${WORKDIR}/${P%_*}
+
+src_unpack() {
+ unpack ${A}
+
+ if use cjk ; then
+ einfo "Applying ${ONIGURUMA}"
+ pushd ${WORKDIR}/oniguruma
+# epatch ${FILESDIR}/oniguruma-2.3.1-gentoo.patch
+ econf --with-rubydir=${S} || die "econf failed"
+ make ${PV/./}
+ popd
+ fi
+
+ cd "${S}"
+
+ epatch "${FILESDIR}/${P}-cgi-dos-1.patch"
+
+ # Fix a hardcoded lib path in configure script
+ sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
+ configure.in || die "sed failed"
+
+ eautoreconf
+}
+
+src_compile() {
+ # -fomit-frame-pointer makes ruby segfault, see bug #150413.
+ filter-flags -fomit-frame-pointer
+
+ # Socks support via dante
+ if use socks5 ; then
+ # Socks support can't be disabled as long as SOCKS_SERVER is
+ # set and socks library is present, so need to unset
+ # SOCKS_SERVER in that case.
+ unset SOCKS_SERVER
+ fi
+
+ # Increase GC_MALLOC_LIMIT if set (default is 8000000)
+ if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
+ append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
+ fi
+
+ econf --program-suffix=${SLOT/./} --enable-shared \
+ $(use_enable socks5 socks) \
+ $(use_enable doc install-doc) \
+ $(use_enable threads pthread) \
+ $(use_enable ipv6 ipv6) \
+ $(use_enable debug debug) \
+ --with-sitedir=/usr/$(get_libdir)/ruby/site_ruby \
+ || die "econf failed"
+
+ emake || die "emake failed"
+}
+
+src_install() {
+ LD_LIBRARY_PATH=${D}/usr/$(get_libdir)
+ RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${SLOT}"
+ for d in $(find ${S}/ext -type d) ; do
+ RUBYLIB="${RUBYLIB}:$d"
+ done
+ export LD_LIBRARY_PATH RUBYLIB
+
+ make DESTDIR=${D} install || die "make install failed"
+
+ if use doc; then
+ make DESTDIR=${D} install-doc || die "make install-doc failed"
+ fi
+
+ if use examples; then
+ dodir ${ROOT}usr/share/doc/${PF}
+ cp -pPR sample ${D}/${ROOT}usr/share/doc/${PF}
+ fi
+
+ if use ppc-macos ; then
+ dosym /usr/lib/libruby${SLOT/./}.${PV%_*}.dylib /usr/lib/libruby.${PV%.*}.dylib
+ dosym /usr/lib/libruby${SLOT/./}.${PV%_*}.dylib /usr/lib/libruby.${PV%_*}.dylib
+ else
+ dosym libruby${SLOT/./}.so.${PV%_*} /usr/$(get_libdir)/libruby.so.${PV%.*}
+ dosym libruby${SLOT/./}.so.${PV%_*} /usr/$(get_libdir)/libruby.so.${PV%_*}
+ fi
+
+ dodoc COPYING* ChangeLog MANIFEST README* ToDo
+}
+
+pkg_postinst() {
+ if ! use ppc-macos ; then
+ ewarn
+ ewarn "Warning: Vim won't work if you've just updated ruby from"
+ ewarn "1.6.x to 1.8.x due to the library version change."
+ ewarn "In that case, you will need to remerge vim."
+ ewarn
+
+ if [ ! -n "$(readlink ${ROOT}usr/bin/ruby)" ] ; then
+ ${ROOT}usr/sbin/ruby-config ruby${SLOT/./}
+ fi
+ einfo
+ einfo "You can change the default ruby interpreter by ${ROOT}usr/sbin/ruby-config"
+ einfo
+ fi
+}
+
+pkg_postrm() {
+ if ! use ppc-macos ; then
+ if [ ! -n "$(readlink ${ROOT}usr/bin/ruby)" ] ; then
+ ${ROOT}usr/sbin/ruby-config ruby${SLOT/./}
+ fi
+ fi
+}