diff options
author | Tristan Heaven <nyhm@gentoo.org> | 2009-09-03 13:35:31 +0000 |
---|---|---|
committer | Tristan Heaven <nyhm@gentoo.org> | 2009-09-03 13:35:31 +0000 |
commit | 24a0405b58d5c9a4a321db71464aecad54e0cf1a (patch) | |
tree | ccf6b639b57b578ae595051f0dd684af1869e34d /games-fps | |
parent | Another tilde fix. Display cleanup. Removal of broken version (diff) | |
download | gentoo-2-24a0405b58d5c9a4a321db71464aecad54e0cf1a.tar.gz gentoo-2-24a0405b58d5c9a4a321db71464aecad54e0cf1a.tar.bz2 gentoo-2-24a0405b58d5c9a4a321db71464aecad54e0cf1a.zip |
Apply patch to fix remote DoS in the dedicated server, bug #239557
(Portage version: 2.2_rc40/cvs/Linux x86_64)
Diffstat (limited to 'games-fps')
-rw-r--r-- | games-fps/ut2004/ChangeLog | 9 | ||||
-rw-r--r-- | games-fps/ut2004/ut2004-3369.3.ebuild | 132 |
2 files changed, 139 insertions, 2 deletions
diff --git a/games-fps/ut2004/ChangeLog b/games-fps/ut2004/ChangeLog index 2d286b101ac4..e985af31c317 100644 --- a/games-fps/ut2004/ChangeLog +++ b/games-fps/ut2004/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for games-fps/ut2004 -# Copyright 2000-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/games-fps/ut2004/ChangeLog,v 1.64 2009/02/05 16:56:21 mr_bones_ Exp $ +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/games-fps/ut2004/ChangeLog,v 1.65 2009/09/03 13:35:31 nyhm Exp $ + +*ut2004-3369.3 (03 Sep 2009) + + 03 Sep 2009; Tristan Heaven <nyhm@gentoo.org> +ut2004-3369.3.ebuild: + Apply patch to fix remote DoS in the dedicated server, bug #239557 05 Feb 2009; Michael Sterrett <mr_bones_@gentoo.org> ut2004-3369-r4.ebuild: diff --git a/games-fps/ut2004/ut2004-3369.3.ebuild b/games-fps/ut2004/ut2004-3369.3.ebuild new file mode 100644 index 000000000000..3a97ea9ea3ff --- /dev/null +++ b/games-fps/ut2004/ut2004-3369.3.ebuild @@ -0,0 +1,132 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-fps/ut2004/ut2004-3369.3.ebuild,v 1.1 2009/09/03 13:35:31 nyhm Exp $ + +inherit eutils multilib games + +MY_P="ut2004-lnxpatch${PV%.*}-2.tar.bz2" +DESCRIPTION="Editor's Choice Edition plus Mega Pack for the critically-acclaimed first-person shooter" +HOMEPAGE="http://www.unrealtournament2004.com/" +SRC_URI="mirror://3dgamers/unrealtourn2k4/${MY_P} + http://speculum.twistedgamer.com/pub/0day.icculus.org/${PN}/${MY_P} + http://treefort.icculus.org/${PN}/${MY_P} + http://sonic-lux.net/data/mirror/ut2004/${MY_P} + mirror://gentoo/ut2004-v${PV/./-}-linux-dedicated.7z" + +LICENSE="ut2003" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="dedicated opengl" +RESTRICT="mirror strip" +PROPERTIES="interactive" + +RDEPEND=">=games-fps/ut2004-data-3186-r2 + >=games-fps/ut2004-bonuspack-ece-1-r1 + >=games-fps/ut2004-bonuspack-mega-1-r1 + =virtual/libstdc++-3.3 + x11-libs/libXext + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXdmcp + media-libs/libsdl + media-libs/openal + opengl? ( virtual/opengl )" +DEPEND="app-arch/p7zip" + +S=${WORKDIR}/UT2004-Patch + +GAMES_CHECK_LICENSE="yes" +dir=${GAMES_PREFIX_OPT}/${PN} + +# The executable pages are required #114733 +QA_EXECSTACK_x86="${dir:1}/System/ut2004-bin + ${dir:1}/System/ucc-bin" + +src_unpack() { + unpack ${A} + cd "${S}"/System + + # These files are owned by ut2004-bonuspack-mega + rm -f Manifest.in{i,t} Packages.md5 + + rm -f ucc-bin* + + if use amd64 ; then + mv -f ut2004-bin-linux-amd64 ut2004-bin || die + else + rm -f ut2004-bin-linux-amd64 + fi + + cd "${WORKDIR}"/ut2004-ucc-bin-09192008 + if use amd64 ; then + mv -f ucc-bin-linux-amd64 "${S}"/System/ucc-bin || die + else + mv -f ucc-bin "${S}"/System/ || die + fi +} + +src_install() { + insinto "${dir}" + doins -r * || die "doins failed" + fperms +x "${dir}"/System/{ucc-bin,ut2004-bin} || die + + dosym /usr/$(get_libdir)/libopenal.so "${dir}"/System/openal.so || die + dosym /usr/$(get_libdir)/libSDL-1.2.so.0 "${dir}"/System/libSDL-1.2.so.0 \ + || die + + games_make_wrapper ut2004 ./ut2004 "${dir}" "${dir}" + make_desktop_entry ut2004 "Unreal Tournament 2004" + + prepgamesdirs +} + +pkg_postinst() { + games_pkg_postinst + + # Here is where we check for the existence of a cdkey... + # If we don't find one, we ask the user for it + if [[ -f ${dir}/System/cdkey ]] ; then + einfo "A cdkey file is already present in ${dir}/System" + else + ewarn "You MUST run this before playing the game:" + ewarn "emerge --config =${CATEGORY}/${PF}" + ewarn "That way you can [re]enter your cdkey." + fi + elog "Starting with 3369, the game supports render-to-texture. To enable" + elog "it, you will need the Nvidia drivers of at least version 7676 and" + elog "you should edit the following:" + elog 'Set "UseRenderTargets=True" in the "[OpenGLDrv.OpenGLRenderDevice]"' + elog 'section of your UT2004.ini or Default.ini and set "bPlayerShadows=True"' + elog 'and "bBlobShadow=False" in the "[UnrealGame.UnrealPawn]" section of' + elog 'your User.ini or DefUser.ini.' +} + +pkg_postrm() { + ewarn "This package leaves a cdkey file in ${dir}/System that you need" + ewarn "to remove to completely get rid of this game's files." +} + +pkg_config() { + ewarn "Your CD key is NOT checked for validity here so" + ewarn "make sure you type it in correctly." + ewarn "If you CTRL+C out of this, the game will not run!" + echo + einfo "CD key format is: XXXXX-XXXXX-XXXXX-XXXXX" + while true ; do + einfo "Please enter your CD key:" + read CDKEY1 + einfo "Please re-enter your CD key:" + read CDKEY2 + if [[ -z ${CDKEY1} ]] || [[ -z ${CDKEY2} ]] ; then + echo "You entered a blank CD key. Try again." + else + if [[ ${CDKEY1} == ${CDKEY2} ]] ; then + echo "${CDKEY1}" | tr [:lower:] [:upper:] > "${dir}"/System/cdkey + einfo "Thank you!" + break + else + eerror "Your CD key entries do not match. Try again." + fi + fi + done +} |