diff options
author | Caleb Tennis <caleb@gentoo.org> | 2007-03-30 12:56:29 +0000 |
---|---|---|
committer | Caleb Tennis <caleb@gentoo.org> | 2007-03-30 12:56:29 +0000 |
commit | 290589989e4b9a04e1cbb9b65c67ff4be7aa72d7 (patch) | |
tree | 3c43af26e348e44f0955336cba236649bef263e3 /kde-base/kdelibs | |
parent | Bump version (diff) | |
download | gentoo-2-290589989e4b9a04e1cbb9b65c67ff4be7aa72d7.tar.gz gentoo-2-290589989e4b9a04e1cbb9b65c67ff4be7aa72d7.tar.bz2 gentoo-2-290589989e4b9a04e1cbb9b65c67ff4be7aa72d7.zip |
Adding a XSS fix patch from kde-packager
(Portage version: 2.1.2.2)
Diffstat (limited to 'kde-base/kdelibs')
-rw-r--r-- | kde-base/kdelibs/ChangeLog | 8 | ||||
-rw-r--r-- | kde-base/kdelibs/files/digest-kdelibs-3.5.6-r4 | 9 | ||||
-rw-r--r-- | kde-base/kdelibs/files/kdelibs-3.5.6-kjs-xss.diff | 38 | ||||
-rw-r--r-- | kde-base/kdelibs/kdelibs-3.5.6-r4.ebuild | 201 |
4 files changed, 255 insertions, 1 deletions
diff --git a/kde-base/kdelibs/ChangeLog b/kde-base/kdelibs/ChangeLog index c119d47e955d..0249921a1830 100644 --- a/kde-base/kdelibs/ChangeLog +++ b/kde-base/kdelibs/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for kde-base/kdelibs # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/ChangeLog,v 1.438 2007/03/22 15:53:35 wolf31o2 Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/ChangeLog,v 1.439 2007/03/30 12:56:29 caleb Exp $ + +*kdelibs-3.5.6-r4 (30 Mar 2007) + + 30 Mar 2007; Caleb Tennis <caleb@gentoo.org> + +files/kdelibs-3.5.6-kjs-xss.diff, +kdelibs-3.5.6-r4.ebuild: + Adding a XSS fix patch from kde-packager 22 Mar 2007; Chris Gianelloni <wolf31o2@gentoo.org> kdelibs-3.5.5-r9.ebuild: diff --git a/kde-base/kdelibs/files/digest-kdelibs-3.5.6-r4 b/kde-base/kdelibs/files/digest-kdelibs-3.5.6-r4 new file mode 100644 index 000000000000..1585f02345d9 --- /dev/null +++ b/kde-base/kdelibs/files/digest-kdelibs-3.5.6-r4 @@ -0,0 +1,9 @@ +MD5 6f8254317dd43af7aea2a347656f552a kdelibs-3.5-patchset-05.tar.bz2 36423 +RMD160 684bb235f3b5b3cb900632e11aa912670f641b96 kdelibs-3.5-patchset-05.tar.bz2 36423 +SHA256 f237ccd3a35c629740355fbcf69b0d706690acac832a4d35db5c0d3a30235e0a kdelibs-3.5-patchset-05.tar.bz2 36423 +MD5 d8ce997461cb1aa2255032f02fd14326 kdelibs-3.5.5-seli-xinerama.patch.bz2 5470 +RMD160 46ed378f1ff2f7e2fa113aa0bf51eae1758264f9 kdelibs-3.5.5-seli-xinerama.patch.bz2 5470 +SHA256 8d002a55954aabdb91a534a1b1f1f37c706faebbae0398fb5a2ff29eeb66954c kdelibs-3.5.5-seli-xinerama.patch.bz2 5470 +MD5 e4d137879a66e92b895b3de5413a61d8 kdelibs-3.5.6.tar.bz2 15509460 +RMD160 ce8c088e13f0e59238719600da9c768eac58b57d kdelibs-3.5.6.tar.bz2 15509460 +SHA256 06766202c6ae21277b7879f363ed88fde8016586ec8c94deb59be260f2231b5c kdelibs-3.5.6.tar.bz2 15509460 diff --git a/kde-base/kdelibs/files/kdelibs-3.5.6-kjs-xss.diff b/kde-base/kdelibs/files/kdelibs-3.5.6-kjs-xss.diff new file mode 100644 index 000000000000..ca4456320ee9 --- /dev/null +++ b/kde-base/kdelibs/files/kdelibs-3.5.6-kjs-xss.diff @@ -0,0 +1,38 @@ +------------------------------------------------------------------------ +r645387 | porten | 2007-03-22 15:01:13 +0100 (Thu, 22 Mar 2007) | 4 lines + +substitute some of the invalid sequences with the standard replacement +char. this matches Mozilla but not IE which leaves them unchanged (or +throws an exception) + +------------------------------------------------------------------------ +--- kjs/function.cpp ++++ kjs/function.cpp +@@ -244,11 +244,15 @@ UString decodeURI(ExecState *exec, UStri + } + + // UTF-8 transform ++ const unsigned long replacementChar = 0xFFFD; + unsigned long V; + if (n == 2) { + unsigned long yyyyy = octets[0] & 0x1F; + unsigned long zzzzzz = octets[1] & 0x3F; + V = (yyyyy << 6) | zzzzzz; ++ // 2-byte sequence overlong for this value? ++ if (V < 0xFF) ++ V = replacementChar; + C = UChar((unsigned short)V); + } + else if (n == 3) { +@@ -256,6 +260,11 @@ UString decodeURI(ExecState *exec, UStri + unsigned long yyyyyy = octets[1] & 0x3F; + unsigned long zzzzzz = octets[2] & 0x3F; + V = (xxxx << 12) | (yyyyyy << 6) | zzzzzz; ++ // 3-byte sequence overlong for this value, ++ // an invalid value or UTF-16 surrogate? ++ if (V < 0x800 || V == 0xFFFE || V == 0xFFFF || ++ (V >= 0xD800 && V <= 0xDFFF)) ++ V = replacementChar; + C = UChar((unsigned short)V); + } + else { diff --git a/kde-base/kdelibs/kdelibs-3.5.6-r4.ebuild b/kde-base/kdelibs/kdelibs-3.5.6-r4.ebuild new file mode 100644 index 000000000000..4f404bf3b7c4 --- /dev/null +++ b/kde-base/kdelibs/kdelibs-3.5.6-r4.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/kdelibs-3.5.6-r4.ebuild,v 1.1 2007/03/30 12:56:29 caleb Exp $ + +inherit kde flag-o-matic eutils multilib +set-kdedir 3.5 + +DESCRIPTION="KDE libraries needed by all KDE programs." +HOMEPAGE="http://www.kde.org/" +SRC_URI="mirror://kde/stable/${PV}/src/${P}.tar.bz2 + mirror://gentoo/kdelibs-3.5-patchset-05.tar.bz2 + mirror://gentoo/${PN}-3.5.5-seli-xinerama.patch.bz2" + +LICENSE="GPL-2 LGPL-2" +SLOT="3.5" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="acl alsa arts cups doc jpeg2k kerberos legacyssl utempter openexr spell ssl tiff +zeroconf avahi kernel_linux fam lua linguas_he kdehiddenvisibility" + +# kde.eclass has kdelibs in DEPEND, and we can't have that in here. +# so we recreate the entire DEPEND from scratch. + +# Added aspell-en as dependency to work around bug 131512. +RDEPEND="$(qt_min_version 3.3.3) + arts? ( >=kde-base/arts-3.5.5 ) + app-arch/bzip2 + >=media-libs/freetype-2 + media-libs/fontconfig + >=dev-libs/libxslt-1.1.16 + >=dev-libs/libxml2-2.6.6 + >=dev-libs/libpcre-4.2 + media-libs/libart_lgpl + net-dns/libidn + acl? ( kernel_linux? ( sys-apps/acl ) ) + ssl? ( >=dev-libs/openssl-0.9.7d ) + alsa? ( media-libs/alsa-lib ) + cups? ( >=net-print/cups-1.1.19 ) + tiff? ( media-libs/tiff ) + kerberos? ( virtual/krb5 ) + jpeg2k? ( media-libs/jasper ) + openexr? ( >=media-libs/openexr-1.2.2-r2 ) + zeroconf? ( !avahi? ( net-misc/mDNSResponder !kde-misc/kdnssd-avahi ) ) + fam? ( virtual/fam ) + virtual/ghostscript + utempter? ( sys-libs/libutempter ) + !kde-base/kde-env + lua? ( dev-lang/lua ) + spell? ( app-text/aspell app-dicts/aspell-en + linguas_he? ( >=app-text/hspell-1.0 ) )" + +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen ) + sys-devel/gettext" + +RDEPEND="${RDEPEND} + || ( ( x11-apps/rgb x11-apps/iceauth ) <virtual/x11-7 ) " + +PDEPEND="zeroconf? ( avahi? ( kde-misc/kdnssd-avahi ) )" + +# Testing code is rather broken and merely for developer purposes, so disable it. +RESTRICT="test" + +pkg_setup() { + if use legacyssl ; then + echo "" + elog "You have the legacyssl use flag enabled, which fixes issues with some broken" + elog "sites, but breaks others instead. It is strongly discouraged to use it." + elog "For more information, see bug #128922." + echo "" + fi + if ! use utempter ; then + echo "" + elog "On some setups that relies on the correct update of utmp records, not using" + elog "utempter might not update them correctly. If you experience unexpected" + elog "behaviour, try to rebuild kde-base/kdelibs with utempter use-flag enabled." + echo "" + fi + + if use alsa && ! built_with_use --missing true media-libs/alsa-lib midi; then + eerror "The alsa USE flag in this package enables ALSA support" + eerror "for libkmid, KDE midi library." + eerror "For this reason, you have to merge media-libs/alsa-lib" + eerror "with the midi USE flag enabled, or disable alsa USE flag" + eerror "for this package." + die "Missing midi USE flag on media-libs/alsa-lib" + fi +} + +src_unpack() { + kde_src_unpack + if use legacyssl ; then + # This patch won't be included upstream, see bug #128922 + epatch "${WORKDIR}/patches/kdelibs_3.5.4-kssl-3des.patch" + fi + + epatch "${FILESDIR}/${P}-khtml-kde-bug-140768.patch" + + # xinerama patch from Lubos Lunak + # http://ktown.kde.org/~seli/xinerama/ + epatch "${DISTDIR}/${PN}-3.5.5-seli-xinerama.patch.bz2" + + epatch "${FILESDIR}/${PN}-3.5.5-vulnerability-20070305.diff" + + epatch "${FILESDIR}/${P}-kjs-xss.diff" +} + +src_compile() { + rm -f "${S}/configure" + + myconf="--with-distribution=Gentoo --disable-fast-malloc + $(use_enable fam libfam) $(use_enable kernel_linux dnotify) + --with-libart --with-libidn + $(use_with acl) $(use_with ssl) + $(use_with alsa) $(use_with arts) + $(use_with kerberos gssapi) $(use_with tiff) + $(use_with jpeg2k jasper) $(use_with openexr) + $(use_enable cups) + $(use_with utempter) $(use_with lua) + $(use_enable kernel_linux sendfile) --enable-mitshm + $(use_with spell aspell)" + + if use zeroconf && ! use avahi; then + myconf="${myconf} --enable-dnssd" + else + myconf="${myconf} --disable-dnssd" + fi + + if use spell; then + myconf="${myconf} $(use_with linguas_he hspell)" + else + myconf="${myconf} --without-hspell" + fi + + if has_version x11-apps/rgb; then + myconf="${myconf} --with-rgbfile=/usr/share/X11/rgb.txt" + fi + + # fix bug 58179, bug 85593 + # kdelibs-3.4.0 needed -fno-gcse; 3.4.1 needs -mminimal-toc; this needs a + # closer look... - corsair + use ppc64 && append-flags "-mminimal-toc" + + # work around bug #120858, gcc 3.4.x -Os miscompilation + use x86 && replace-flags "-Os" "-O2" # see bug #120858 + + export BINDNOW_FLAGS="$(bindnow-flags)" + + kde_src_compile + + if use doc; then + make apidox || die + fi +} + +src_install() { + kde_src_install + + if use doc; then + make DESTDIR="${D}" install-apidox || die + fi + + # Needed to create lib -> lib64 symlink for amd64 2005.0 profile + if [ "${SYMLINK_LIB}" = "yes" ]; then + dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) ${KDEDIR}/lib + fi + + # Get rid of the disabled version of the kdnsd libraries + if use zeroconf && use avahi; then + rm -rf "${D}/${PREFIX}"/$(get_libdir)/libkdnssd.* + fi + + dodir /etc/env.d + + # List all the multilib libdirs + local libdirs + for libdir in $(get_all_libdirs); do + libdirs="${libdirs}:${PREFIX}/${libdir}" + done + + cat <<EOF > "${D}"/etc/env.d/45kdepaths-${SLOT} # number goes down with version upgrade +PATH=${PREFIX}/bin +ROOTPATH=${PREFIX}/sbin:${PREFIX}/bin +LDPATH=${libdirs:1} +CONFIG_PROTECT="${PREFIX}/share/config ${PREFIX}/env ${PREFIX}/shutdown /usr/share/config" +KDEDIRS="${PREFIX}:/usr:/usr/local" +#KDE_IS_PRELINKED=1 +XDG_DATA_DIRS="/usr/share:${PREFIX}/share:/usr/local/share" +COLON_SEPARATED="XDG_DATA_DIRS" +EOF +} + +pkg_postinst() { + if use zeroconf; then + echo + elog "To make zeroconf support available in KDE make sure that the 'mdnsd' daemon" + elog "is running. Make sure also that multicast dns lookups are enabled by editing" + elog "the 'hosts:' line in /etc/nsswitch.conf to include 'mdns', e.g.:" + elog " hosts: files mdns dns" + echo + fi +} |