summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2008-04-16 03:26:28 +0000
committerMike Frysinger <vapier@gentoo.org>2008-04-16 03:26:28 +0000
commit3082c6a5d1c41c9f74332e3d649f1e52b631cafb (patch)
tree0609daafc082e7605bf9ebaf4eae0347bbb752a3 /x11-terms/eterm
parentVersion bump; fixes compile error. (bug #217813) (diff)
downloadgentoo-2-3082c6a5d1c41c9f74332e3d649f1e52b631cafb.tar.gz
gentoo-2-3082c6a5d1c41c9f74332e3d649f1e52b631cafb.tar.bz2
gentoo-2-3082c6a5d1c41c9f74332e3d649f1e52b631cafb.zip
Add fix for DISPLAY security issue #216833.
(Portage version: 2.2_pre5)
Diffstat (limited to 'x11-terms/eterm')
-rw-r--r--x11-terms/eterm/ChangeLog8
-rw-r--r--x11-terms/eterm/eterm-0.9.4-r1.ebuild91
-rw-r--r--x11-terms/eterm/files/eterm-0.9.4-no-default-DISPLAY.patch25
3 files changed, 123 insertions, 1 deletions
diff --git a/x11-terms/eterm/ChangeLog b/x11-terms/eterm/ChangeLog
index 6e91a732ba7f..66ef585cbbc4 100644
--- a/x11-terms/eterm/ChangeLog
+++ b/x11-terms/eterm/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-terms/eterm
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-terms/eterm/ChangeLog,v 1.53 2008/04/08 17:47:42 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-terms/eterm/ChangeLog,v 1.54 2008/04/16 03:26:28 vapier Exp $
+
+*eterm-0.9.4-r1 (16 Apr 2008)
+
+ 16 Apr 2008; Mike Frysinger <vapier@gentoo.org>
+ +files/eterm-0.9.4-no-default-DISPLAY.patch, +eterm-0.9.4-r1.ebuild:
+ Add fix for DISPLAY security issue #216833.
08 Apr 2008; Mike Frysinger <vapier@gentoo.org> eterm-0.9.4.ebuild,
eterm-9999.ebuild:
diff --git a/x11-terms/eterm/eterm-0.9.4-r1.ebuild b/x11-terms/eterm/eterm-0.9.4-r1.ebuild
new file mode 100644
index 000000000000..e4ddbbdae6da
--- /dev/null
+++ b/x11-terms/eterm/eterm-0.9.4-r1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-terms/eterm/eterm-0.9.4-r1.ebuild,v 1.1 2008/04/16 03:26:28 vapier Exp $
+
+inherit eutils
+
+MY_P=Eterm-${PV}
+
+if [[ ${PV} == "9999" ]] ; then
+ #ECVS_SERVER="cvs.sourceforge.net:/cvsroot/enlightenment"
+ ECVS_SERVER="anoncvs.enlightenment.org:/var/cvs/e"
+ ECVS_MODULE="eterm/Eterm"
+ inherit cvs
+fi
+
+DESCRIPTION="A vt102 terminal emulator for X"
+HOMEPAGE="http://www.eterm.org/"
+if [[ ${PV} == "9999" ]] ; then
+ SRC_URI=""
+else
+ SRC_URI="http://www.eterm.org/download/${MY_P}.tar.gz
+ !minimal? ( http://www.eterm.org/download/Eterm-bg-${PV}.tar.gz )
+ mirror://sourceforge/eterm/${MY_P}.tar.gz
+ !minimal? ( mirror://sourceforge/eterm/Eterm-bg-${PV}.tar.gz )"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="escreen etwin minimal mmx sse2 unicode"
+
+DEPEND="x11-libs/libX11
+ x11-libs/libXmu
+ x11-libs/libXt
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-proto/xextproto
+ x11-proto/xproto
+ >=x11-libs/libast-0.6.1
+ media-libs/imlib2
+ etwin? ( app-misc/twin )
+ escreen? ( app-misc/screen )"
+
+if [[ ${PV} == "9999" ]] ; then
+ S=${WORKDIR}/${ECVS_MODULE}
+else
+ S=${WORKDIR}/${MY_P}
+fi
+
+pkg_setup() {
+ if ! built_with_use media-libs/imlib2 X ; then
+ eerror "media-libs/imlib2 was built without X support."
+ eerror "Please add emerge it with USE=X."
+ die "imlib2 needs USE=X"
+ fi
+}
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ cvs_src_unpack
+ cd "${S}"
+ NOCONFIGURE=yes ./autogen.sh || die "autogen failed"
+ else
+ unpack ${MY_P}.tar.gz
+ cd "${S}"
+ use minimal || unpack Eterm-bg-${PV}.tar.gz
+ epatch "${FILESDIR}"/eterm-0.9.4-no-default-DISPLAY.patch #216833
+ fi
+}
+
+src_compile() {
+ export TIC="true"
+ econf \
+ $(use_enable escreen) \
+ $(use_enable etwin) \
+ --with-imlib \
+ --enable-trans \
+ $(use_enable mmx) \
+ $(use_enable sse2) \
+ $(use_enable unicode multi-charset) \
+ --with-delete=execute \
+ --with-backspace=auto \
+ || die "conf failed"
+ emake || die "make failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "install failed"
+ dodoc ChangeLog README ReleaseNotes
+ use escreen && dodoc doc/README.Escreen
+ dodoc bg/README.backgrounds
+}
diff --git a/x11-terms/eterm/files/eterm-0.9.4-no-default-DISPLAY.patch b/x11-terms/eterm/files/eterm-0.9.4-no-default-DISPLAY.patch
new file mode 100644
index 000000000000..3dc50202a0e5
--- /dev/null
+++ b/x11-terms/eterm/files/eterm-0.9.4-no-default-DISPLAY.patch
@@ -0,0 +1,25 @@
+fix from upstream
+
+http://bugs.gentoo.org/216833
+
+Index: src/startup.c
+===================================================================
+RCS file: /cvs/e/eterm/Eterm/src/startup.c,v
+retrieving revision 1.58
+retrieving revision 1.59
+diff -u -p -r1.58 -r1.59
+--- src/startup.c 30 Oct 2006 21:12:12 -0000 1.58
++++ src/startup.c 16 Apr 2008 03:23:27 -0000 1.59
+@@ -96,7 +96,11 @@ eterm_bootstrap(int argc, char *argv[])
+
+ /* Open display, get options/resources and create the window */
+ if (getenv("DISPLAY") == NULL) {
+- display_name = STRDUP(":0");
++ /* do not default to any display due to security issues -- vapier
++ * http://article.gmane.org/gmane.comp.security.oss.general/122
++ */
++ libast_print_error("can't open display: DISPLAY not set\n");
++ exit(EXIT_FAILURE);
+ } else {
+ display_name = STRDUP(getenv("DISPLAY"));
+ }