summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Crête <tester@gentoo.org>2007-04-23 18:13:40 +0000
committerOlivier Crête <tester@gentoo.org>2007-04-23 18:13:40 +0000
commit3d6051ebe1e205beaf4e668403f7c83b7de2cea0 (patch)
tree270902489efcddf38c58c9b3efbe5ae8e94ed90f /net-im/amsn
parentVersion bump. (diff)
downloadgentoo-2-3d6051ebe1e205beaf4e668403f7c83b7de2cea0.tar.gz
gentoo-2-3d6051ebe1e205beaf4e668403f7c83b7de2cea0.tar.bz2
gentoo-2-3d6051ebe1e205beaf4e668403f7c83b7de2cea0.zip
Add patches provided by upstream to fix a DoS (bug #175563)
(Portage version: 2.1.2.2)
Diffstat (limited to 'net-im/amsn')
-rw-r--r--net-im/amsn/ChangeLog10
-rw-r--r--net-im/amsn/amsn-0.94.ebuild87
-rw-r--r--net-im/amsn/amsn-0.95-r4.ebuild71
-rw-r--r--net-im/amsn/amsn-0.96-r1.ebuild (renamed from net-im/amsn/amsn-0.96.ebuild)11
-rw-r--r--net-im/amsn/files/amsn-0.95-dos.patch103
-rw-r--r--net-im/amsn/files/amsn-0.96-dos.patch105
-rw-r--r--net-im/amsn/files/digest-amsn-0.943
-rw-r--r--net-im/amsn/files/digest-amsn-0.95-r43
-rw-r--r--net-im/amsn/files/digest-amsn-0.96-r1 (renamed from net-im/amsn/files/digest-amsn-0.96)0
9 files changed, 300 insertions, 93 deletions
diff --git a/net-im/amsn/ChangeLog b/net-im/amsn/ChangeLog
index d8c3ce6cd1f7..0e26dc756dd2 100644
--- a/net-im/amsn/ChangeLog
+++ b/net-im/amsn/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-im/amsn
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/amsn/ChangeLog,v 1.63 2007/02/22 02:17:15 peper Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/amsn/ChangeLog,v 1.64 2007/04/23 18:13:40 tester Exp $
+
+*amsn-0.96-r1 (23 Apr 2007)
+*amsn-0.95-r4 (23 Apr 2007)
+
+ 23 Apr 2007; <tester@gentoo.org> +files/amsn-0.95-dos.patch,
+ +files/amsn-0.96-dos.patch, -amsn-0.94.ebuild, +amsn-0.95-r4.ebuild,
+ -amsn-0.96.ebuild, +amsn-0.96-r1.ebuild:
+ Add patches provided by upstream to fix a DoS (bug #175563)
22 Feb 2007; Piotr Jaroszyński <peper@gentoo.org> ChangeLog:
Transition to Manifest2.
diff --git a/net-im/amsn/amsn-0.94.ebuild b/net-im/amsn/amsn-0.94.ebuild
deleted file mode 100644
index 1835584c0d31..000000000000
--- a/net-im/amsn/amsn-0.94.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2006 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/amsn/amsn-0.94.ebuild,v 1.11 2006/11/13 15:05:20 flameeyes Exp $
-
-S="${WORKDIR}/${P/./_}"
-DESCRIPTION="Alvaro's Messenger client for MSN"
-SRC_URI="mirror://sourceforge/${PN}/${P/./_}.tar.gz"
-HOMEPAGE="http://amsn.sourceforge.net"
-
-IUSE="gnome kde imlib"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="alpha amd64 hppa ppc sparc x86"
-
-
-DEPEND=">=dev-lang/tcl-8.3
- >=dev-lang/tk-8.3
- imlib? ( media-libs/imlib )"
-
-RDEPEND="${DEPEND}
- dev-tcltk/tls
- media-gfx/imagemagick"
-
-src_compile() {
-
- if use imlib
- then
- einfo "Compiling the freedesktop notification plugin"
- cd ${S}/plugins/traydock
- econf || die
- make || die
- fi
-}
-
-src_install() {
- dodir /usr/share/amsn/
- cp -pPR ${S}/* ${D}/usr/share/amsn/
-
- # Remove all CVS extra stuff
- # not here in this version
- # find ${D} -type d -name CVS -exec rm -rf {} \;
-
- if use gnome
- then
- dodir /usr/share/applications
- cp ${D}/usr/share/amsn/amsn.desktop ${D}/usr/share/applications
- einfo "Installing GNOME Icons in /usr/share/pixmaps"
- dodir /usr/share/pixmaps
- cp -pPR ${S}/icons/32x32/* ${D}/usr/share/pixmaps/
- fi
-
-
- if use kde
- then
- dodir /usr/share/applnk/Internet
- cp ${D}/usr/share/amsn/amsn.desktop ${D}/usr/share/applnk/Internet/
- einfo "Installing KDE Icons in default theme"
- dodir /usr/share/pixmaps
- cp -pPR ${S}/icons/32x32/* ${D}/usr/share/pixmaps/
- fi
-
- if use imlib
- then
- einfo "Installing the freedesktop notification plugin"
- dodir /usr/lib/amsn/plugins/traydock
- mv ${D}/usr/share/amsn/plugins/traydock/libtray.so ${D}/usr/lib/amsn/plugins/traydock/
- rm -rf ${D}/usr/share/amsn/plugins/traydock/
- ln -s ../../../lib/amsn/plugins/traydock/ ${D}/usr/share/amsn/plugins/
- else
- rm -rf ${D}/usr/share/amsn/plugins/traydock
- fi
-
- rm -rf ${D}/usr/share/amsn/plugins/winflash
- rm -rf ${D}/usr/share/amsn/plugins/QuickTimeTcl3.1
- rm -rf ${D}/usr/share/amsn/plugins/applescript
- rm -rf ${D}/usr/share/amsn/plugins/tclCarbonNotification
- rm -rf ${D}/usr/share/amsn/plugins/tclAE2.0
- rm -rf ${D}/usr/share/amsn/utils/
-
- dodir /usr/bin/
- ln -s ../share/amsn/amsn ${D}/usr/bin/amsn
-
- cd ${D}/usr/share/amsn
- dodoc TODO README FAQ CREDITS HELP
- rm -f TODO
-}
diff --git a/net-im/amsn/amsn-0.95-r4.ebuild b/net-im/amsn/amsn-0.95-r4.ebuild
new file mode 100644
index 000000000000..cba33d21eb0f
--- /dev/null
+++ b/net-im/amsn/amsn-0.95-r4.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-im/amsn/amsn-0.95-r4.ebuild,v 1.1 2007/04/23 18:13:40 tester Exp $
+
+inherit eutils fdo-mime
+
+MY_P=${P/_rc/RC}
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="Alvaro's Messenger client for MSN"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
+HOMEPAGE="http://amsn.sourceforge.net"
+
+RESTRICT="test"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
+IUSE=""
+
+DEPEND=">=dev-lang/tcl-8.4
+ >=dev-lang/tk-8.4
+ >=dev-tcltk/tls-1.4.1"
+
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+
+ cd ${S}
+ epatch ${FILESDIR}/${P}-dos.patch
+}
+
+src_install() {
+ dodir /usr/share/amsn/
+
+ sed -i -e 's:Icon=msn.png:Icon=amsn:' "${S}"/amsn.desktop
+ domenu amsn.desktop
+
+ for res in 32 48 64 96 128; do
+ insinto /usr/share/icons/hicolor/${res}x${res}/apps
+ newins ${S}/icons/${res}x${res}/aMSN_${res}.png amsn.png
+ done
+
+ insinto /usr/share/pixmaps
+ newins ${S}/icons/32x32/aMSN_32.png amsn.png
+
+ dodoc AGREEMENT TODO README FAQ CREDITS docs/*
+
+ rm -rf GNUGPL AGREEMENT TODO README FAQ CREDITS HELP amsn.desktop icons \
+ utils/windows utils/macosx docs lang/LANG-HOWTO debian
+
+ insinto /usr/share/amsn/
+ insopts -m644
+ doins -r "${S}"/*
+
+ dosym ../share/amsn/amsn /usr/bin/amsn
+ dosym ../share/amsn/amsn-remote /usr/bin/amsn-remote
+ dosym ../share/amsn/amsn-remote-CLI /usr/bin/amsn-remote-CLI
+ chmod +x "${D}"/usr/share/amsn/amsn
+ chmod +x "${D}"/usr/share/amsn/amsn-remote
+ chmod +x "${D}"/usr/share/amsn/amsn-remote-CLI
+
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ ewarn "You might have to remove ~/.amsn prior to running as user if amsn hangs on start-up."
+}
+
diff --git a/net-im/amsn/amsn-0.96.ebuild b/net-im/amsn/amsn-0.96-r1.ebuild
index b5aee73b73e9..705e99bda906 100644
--- a/net-im/amsn/amsn-0.96.ebuild
+++ b/net-im/amsn/amsn-0.96-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/amsn/amsn-0.96.ebuild,v 1.3 2006/12/21 20:16:01 tester Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/amsn/amsn-0.96-r1.ebuild,v 1.1 2007/04/23 18:13:40 tester Exp $
inherit eutils fdo-mime gnome2-utils
@@ -27,6 +27,13 @@ DEPEND=">=dev-lang/tcl-8.4
RDEPEND="${DEPEND}"
+src_unpack() {
+ unpack ${A}
+
+ cd ${S}
+ epatch ${FILESDIR}/${P}-dos.patch
+}
+
src_install() {
make rpm-install INSTALL_PREFIX=${D}
diff --git a/net-im/amsn/files/amsn-0.95-dos.patch b/net-im/amsn/files/amsn-0.95-dos.patch
new file mode 100644
index 000000000000..dfd211e99814
--- /dev/null
+++ b/net-im/amsn/files/amsn-0.95-dos.patch
@@ -0,0 +1,103 @@
+diff -u amsn-0.95_OLD/config.tcl amsn-0.95/config.tcl
+--- amsn-0.95_OLD/config.tcl 2005-12-22 03:06:24.000000000 +0100
++++ amsn-0.95/config.tcl 2007-04-23 19:37:54.000000000 +0200
+@@ -1324,7 +1324,12 @@
+ while { $tries < 5 } {
+ set Port [GetRandomProfilePort]
+ status_log "LockProfile: Got random port $Port\n" blue
+- if { [catch {socket -server lockSvrNew -myaddr localhost $Port} newlockSock] == 0 } {
++ if { [::config::getKey enableremote] == 1} {
++ set cmd "socket -server lockSvrNew $Port"
++ } else {
++ set cmd "socket -myaddr 127.0.0.1 -server lockSvrNew $Port"
++ }
++ if { [catch {eval $cmd} newlockSock] == 0 } {
+ # Got one
+ LoginList changelock 0 $email $Port
+ set lockSock $newlockSock
+diff -u amsn-0.95_OLD/remote.tcl amsn-0.95/remote.tcl
+--- amsn-0.95_OLD/remote.tcl 2005-12-22 03:06:24.000000000 +0100
++++ amsn-0.95/remote.tcl 2007-04-23 19:40:41.000000000 +0200
+@@ -9,6 +9,7 @@
+ set remote_auth 0
+ set remote_sock_lock 0
+ set remote_sock 0
++ set remote_authtimer 0
+ }
+
+ proc remote_check_online { } {
+@@ -20,6 +21,11 @@
+ }
+ }
+
++proc remote_touchauthtimer {} {
++ global remote_authtimer
++ set remote_authtimer 0
++}
++
+ namespace eval ::remote {
+
+ # connect
+@@ -235,6 +241,11 @@
+ proc read_remote { command sock } {
+ global remote_auth remote_sock
+
++ if { [::config::getKey enableremote] != 1} {
++ close $sock
++ return
++ }
++
+ if { "$remote_sock" != "$sock" } {
+ set remote_temp_sock $remote_sock
+ init_remote $sock
+@@ -247,6 +258,9 @@
+
+
+ if {$command != ""} {
++ #AIM-FIX: Make command a real quoted list, or it will raise
++ #errors when containing braces
++ set command [split $command]
+ if { $remote_auth == 0 } {
+ authenticate "$command" "$sock"
+ } elseif { [catch {eval "::remote::$command" } res] } {
+@@ -264,26 +278,27 @@
+ }
+
+ proc authenticate { command sock } {
+- global remotemd5key remote_auth remote_sock_lock
++ global remotemd5key remote_auth remote_sock_lock remote_authtimer userchatto
++
++ if {$remote_authtimer} {
++ close $sock
++ return
++ }
+
+ if { $command == "auth" } {
+ set remotemd5key "[md5keygen]"
+ write_remote "auth $remotemd5key"
+ } elseif { [lindex $command 0] == "auth2" && [info exists remotemd5key] } {
+ if { "[lindex $command 1]" == "[::md5::hmac $remotemd5key [list [::config::getKey remotepassword]]]" } {
+- if { [::config::getKey enableremote] == 1 } {
+- set remote_auth 1
+- set remote_sock_lock $sock
+- write_remote "Authentication successfull"
+- } else {
+- write_remote "User disabled remote control"
+- }
++ set remote_auth 1
++ set remote_sock_lock $sock
++ catch { unset userchatto }
++ write_remote "Authentication successfull"
+ } else {
+- if { [::config::getKey enableremote] == 1 } {
+- write_remote "Authentication failed"
+- } else {
+- write_remote "User disabled remote control"
+- }
++ set remote_authtimer 1
++ after 3000 [list remote_touchauthtimer]
++ vwait remote_authtimer
++ write_remote "Authentication failed"
+ }
+ unset remotemd5key
+ } else { \ No newline at end of file
diff --git a/net-im/amsn/files/amsn-0.96-dos.patch b/net-im/amsn/files/amsn-0.96-dos.patch
new file mode 100644
index 000000000000..398248d29a92
--- /dev/null
+++ b/net-im/amsn/files/amsn-0.96-dos.patch
@@ -0,0 +1,105 @@
+diff -u amsn-0.96_OLD/config.tcl amsn-0.96/config.tcl
+--- amsn-0.96_OLD/config.tcl 2006-09-06 19:08:18.000000000 +0200
++++ amsn-0.96/config.tcl 2007-04-23 19:43:12.000000000 +0200
+@@ -1357,7 +1357,12 @@
+ while { $tries < 5 } {
+ set Port [GetRandomProfilePort]
+ status_log "LockProfile: Got random port $Port\n" blue
+- if { [catch {socket -server lockSvrNew $Port} newlockSock] == 0 } {
++ if { [::config::getKey enableremote] == 1} {
++ set cmd "socket -server lockSvrNew $Port"
++ } else {
++ set cmd "socket -myaddr 127.0.0.1 -server lockSvrNew $Port"
++ }
++ if { [catch {eval $cmd} newlockSock] == 0 } {
+ LoginList changelock 0 $email $Port
+ set lockSock $newlockSock
+ break
+diff -u amsn-0.96_OLD/remote.tcl amsn-0.96/remote.tcl
+--- amsn-0.96_OLD/remote.tcl 2006-10-08 05:13:58.000000000 +0200
++++ amsn-0.96/remote.tcl 2007-04-23 19:50:30.000000000 +0200
+@@ -9,6 +9,7 @@
+ set remote_auth 0
+ set remote_sock_lock 0
+ set remote_sock 0
++ set remote_authtimer 0
+ }
+
+ proc remote_check_online { } {
+@@ -20,6 +21,11 @@
+ }
+ }
+
++proc remote_touchauthtimer {} {
++ global remote_authtimer
++ set remote_authtimer 0
++}
++
+ namespace eval ::remote {
+
+ # connect
+@@ -240,6 +246,11 @@
+ proc read_remote { command sock } {
+ global remote_auth remote_sock
+
++ if { [::config::getKey enableremote] != 1} {
++ close $sock
++ return
++ }
++
+ if { "$remote_sock" != "$sock" } {
+ set remote_temp_sock $remote_sock
+ init_remote $sock
+@@ -252,6 +263,9 @@
+
+
+ if {$command != ""} {
++ #AIM-FIX: Make command a real quoted list, or it will raise
++ #errors when containing braces
++ set command [split $command]
+ if { $remote_auth == 0 } {
+ authenticate "$command" "$sock"
+ } elseif { [catch {eval "::remote::$command" } res] } {
+@@ -269,28 +283,28 @@
+ }
+
+ proc authenticate { command sock } {
+- global remotemd5key remote_auth remote_sock_lock
++ global remotemd5key remote_auth remote_sock_lock remote_authtimer
+ global userchatto
+
++ if {$remote_authtimer} {
++ close $sock
++ return
++ }
++
+ if { $command == "auth" } {
+ set remotemd5key "[md5keygen]"
+ write_remote "auth $remotemd5key"
+ } elseif { [lindex $command 0] == "auth2" && [info exists remotemd5key] } {
+ if { "[lindex $command 1]" == "[::md5::hmac $remotemd5key [list [::config::getKey remotepassword]]]" } {
+- if { [::config::getKey enableremote] == 1 } {
+- set remote_auth 1
+- set remote_sock_lock $sock
+- catch { unset userchatto }
+- write_remote "Authentication successfull"
+- } else {
+- write_remote "User disabled remote control"
+- }
++ set remote_auth 1
++ set remote_sock_lock $sock
++ catch { unset userchatto }
++ write_remote "Authentication successfull"
+ } else {
+- if { [::config::getKey enableremote] == 1 } {
+- write_remote "Authentication failed"
+- } else {
+- write_remote "User disabled remote control"
+- }
++ set remote_authtimer 1
++ after 3000 [list remote_touchauthtimer]
++ vwait remote_authtimer
++ write_remote "Authentication failed"
+ }
+ unset remotemd5key
+ } else { \ No newline at end of file
diff --git a/net-im/amsn/files/digest-amsn-0.94 b/net-im/amsn/files/digest-amsn-0.94
deleted file mode 100644
index 434a1a722cd6..000000000000
--- a/net-im/amsn/files/digest-amsn-0.94
+++ /dev/null
@@ -1,3 +0,0 @@
-MD5 7b7db9225342bb6c59b873ec90882e22 amsn-0_94.tar.gz 2293874
-RMD160 184a5fd1ff08e02420a5e85a96b58be39f64c796 amsn-0_94.tar.gz 2293874
-SHA256 a30df92d1f13ecd790cd77c4699c427b094df62bf7011e743cdd8198a265738c amsn-0_94.tar.gz 2293874
diff --git a/net-im/amsn/files/digest-amsn-0.95-r4 b/net-im/amsn/files/digest-amsn-0.95-r4
new file mode 100644
index 000000000000..5c826108199f
--- /dev/null
+++ b/net-im/amsn/files/digest-amsn-0.95-r4
@@ -0,0 +1,3 @@
+MD5 d0ea6e858601133c5abbfbbb5c84c8da amsn-0.95.tar.bz2 4460547
+RMD160 7729b10907292eb413d1f5a6488c506f38599173 amsn-0.95.tar.bz2 4460547
+SHA256 3ded8ea3f5e6570f643d9036d3ffdf3104ab4bab2973ee0ccf933e332d8d46ba amsn-0.95.tar.bz2 4460547
diff --git a/net-im/amsn/files/digest-amsn-0.96 b/net-im/amsn/files/digest-amsn-0.96-r1
index 5c0e08b2b66d..5c0e08b2b66d 100644
--- a/net-im/amsn/files/digest-amsn-0.96
+++ b/net-im/amsn/files/digest-amsn-0.96-r1