fix for msn login failures
authorAlex Alexander <wired@gentoo.org>
Mon, 14 Nov 2011 23:31:48 +0000 (23:31 +0000)
committerAlex Alexander <wired@gentoo.org>
Mon, 14 Nov 2011 23:31:48 +0000 (23:31 +0000)
Package-Manager: portage-2.2.0_alpha74/cvs/Linux x86_64

net-im/bitlbee/ChangeLog
net-im/bitlbee/Manifest
net-im/bitlbee/bitlbee-3.0.3-r1.ebuild [new file with mode: 0644]
net-im/bitlbee/files/bitlbee-3.0.3-msn-login-fix.patch [new file with mode: 0644]

index fcb7e3308e24acca19fbcdc55c3a24645cf3cb6a..6cef683a6cfa461f54746eec10cc5c6d0720ab1b 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-im/bitlbee
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/bitlbee/ChangeLog,v 1.147 2011/10/11 19:33:24 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/bitlbee/ChangeLog,v 1.148 2011/11/14 23:31:48 wired Exp $
+
+*bitlbee-3.0.3-r1 (14 Nov 2011)
+
+  14 Nov 2011; Alex Alexander <wired@gentoo.org> +bitlbee-3.0.3-r1.ebuild,
+  +files/bitlbee-3.0.3-msn-login-fix.patch:
+  fix for msn login failures
 
   11 Oct 2011; Tim Harder <radhermit@gentoo.org>
   -files/bitlbee-1.2.2-fix_tests_check_set.patch, -bitlbee-1.2.3.ebuild,
index 9cf505dd28c15ccca19eca69530eb3832b860ff1..3714dd77c837ce8fab90243dc54f45d8c2582420 100644 (file)
@@ -2,20 +2,28 @@
 Hash: SHA512
 
 AUX bitlbee-3.0-configure.patch 393 RMD160 eb546e7271549cd56b87168ccf0ccb3ffb80742d SHA1 7762bae624acf765d3905b46b84448762694a25f SHA256 615e0cadb52abea5c133f8588b7d772c787bee725f11a986bed90226e5da4acd
+AUX bitlbee-3.0.3-msn-login-fix.patch 1117 RMD160 4b2e70e0eb1c440f517fbc088a4bd296adf702a4 SHA1 eaecf7de0f18069d44187e116400c7827a43260b SHA256 547fd543af651d519695324bbebbf208c333f2d17bfbd0742435e09a33d6ae5c
 AUX bitlbee.confd 62 RMD160 f71fff4ab4fe49eebc071d693896f567291bee54 SHA1 80beb974922b2ff6cf9732a7bce1eb03cc10d870 SHA256 105afc0382fc5adc03ed644dba4e78817015a55432349f259a286ac3c1b06628
 AUX bitlbee.initd 605 RMD160 183c4a8117556cb474c01ba4038b357a6716f98e SHA1 3427fa5f558b2957046ef1a6afdd4bc2bb8807e3 SHA256 037091df1746b9a477f07cdac52d99f9310055646ce0e10f859835ba105e3fb4
 DIST bitlbee-3.0.3.tar.gz 676417 RMD160 4b537871eef1bb5b6839105bc7bc9f2567e5b8e1 SHA1 4140eb7aaa2c6a39fa059d19f8fbaec0d7a1ebff SHA256 82ca758937ce7bedaab49edec75f4ad45a3102ac3beaa932b64c34fbb1e3af25
+EBUILD bitlbee-3.0.3-r1.ebuild 4515 RMD160 dea59433fda09b95cf70b05e01825345f4b7261f SHA1 93d62950e2df7eb549ed3843e544b30c6a47fd61 SHA256 95766a7790ee9735ab514c6c05dec4a722df341e6719e1d497bbfa4496f299e8
 EBUILD bitlbee-3.0.3.ebuild 4438 RMD160 c2f7439307701c30ab6d8b60966348ed75dedba3 SHA1 be603acc6fef1d6e44fcde4d46ad6ebddd516b54 SHA256 06da79c62eb09481bad54b641152cdc10bd9d3a6c9c4ea4ea84348ceb2cdd66e
-MISC ChangeLog 22889 RMD160 4496fcb788d89ad08427fe031aa8def71f2cef18 SHA1 369f5bf253cb0eab6f90d407923bb8298cc461fa SHA256 cf0184bb9ecf507ab010ff9b6f98a25e51205d578298b9edf01972c30c04b755
+MISC ChangeLog 23067 RMD160 6ad77b4de7a18eb14b515153e00f220f7770f751 SHA1 a02cf7a3aba11b9243bb7d3126a25ac8a9358f33 SHA256 2bdcb5e4dcca9b660336ffb6dc163b322f1517bb4a31ab03c3e71ce621bfe491
 MISC metadata.xml 1026 RMD160 a2745a59703295794f17246716edd8610c10c776 SHA1 59fc3b090bd0b0d6c72ff1c77dcbd96f7207d608 SHA256 e6760ca4cd330d1c84b127e73144a2310f9e0215562246156ce9519112e73726
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
-iQEcBAEBCgAGBQJOlJoNAAoJEEqz6FtPBkyjmnMH/2U5Osinx42UlYwB7L6i6ijl
-24bPUS7FpM98T/vDfpU3bmrYXB1LDEz+3b2uPGUdHYVsO5vpfoX8PR08DVyYiqfd
-5AlAtsTH8C7wSBy+PSTC3Ksxe3FQLFnvo7ua5zC7bkR7C9tKO1Q9g+qy6o5Z4ju8
-0ikY0wMkc3kdE4nmAPiHvlwYibjj0O2s4YNr+wN3TVZIat8y3og6YC01YoLYEpjb
-DRZvJpbVk0J1tE+RYogIrMI1re8EfLQYEp3hNccF/V7GVecCW9ZuYfA9Yq4jR9mC
-9m8BOgmMW5LOTtK9fwONtYyjYXN7JYzYVX1AWI60UyOp2GOF3twHB/Z8sTvibMk=
-=57h4
+iQIcBAEBCgAGBQJOwaT3AAoJEDZF8K7rm0r6nkUP/iLDzagj6uHLq7UCuOfxMgob
+UuPlmj582/Dd14WMAIV5drmUFErkfb4DMVqu8arEMFnHVM4NXBIwlAD/6sS9Ie2d
+rYrs+CwzyOXootnqggKOV3rLCb6gfeLdcDjloT4wE+y95n+Jmjmgl7763zjloMXz
+IUK2V2YwPsEg/oeYyhrzsnG9GJz8Vy0+JQqAhd4upr+Ye+B1Uutf+HmLbclYA/u5
+c+A9CltPptTTZ0sOgnoTnyJ5ntxxXlwofFiqVdPU182LgLMBl8JwCDqyEtMVYS+L
+Th7BrzhHCRxeFQZn9yaAFG23TAOI06abX/bmWy60M6n37zwMem8kEJ7uIXz2FP4j
+Q+dW7kHj++6hNysD3ugT5GnDtWg0aIJ4CRCYWYXV1oLp6vp8OHzapiVExAPEfkE+
+d5TowCkgvhYsTOMSBVvsIKVtbtQFzHex8xfxvUSNfxaV8s/h3K4ImkRuUUDkWsmx
+tpDBH7+oOZxcMwweEdE9CEMNDWAcuAN4j4YoGwvOy0+v32q9c66vwFUFeWD0XAmD
+AP4kN4fDiuJ1fpHIQe6B5CCsvuTAokhT8ZcTPvhlloCF7eiow0boSe0CkfmAu3VM
+Wa/DOhNQweSX/idt4VrtF17P0Mg4ckBjEV5UQ9PQFzdVn2EE05JKb9i6SazEH932
+V2S9kN1Y4k75kEW6AVgm
+=mLMj
 -----END PGP SIGNATURE-----
diff --git a/net-im/bitlbee/bitlbee-3.0.3-r1.ebuild b/net-im/bitlbee/bitlbee-3.0.3-r1.ebuild
new file mode 100644 (file)
index 0000000..266258b
--- /dev/null
@@ -0,0 +1,169 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-im/bitlbee/bitlbee-3.0.3-r1.ebuild,v 1.1 2011/11/14 23:31:48 wired Exp $
+
+EAPI="4"
+inherit eutils multilib
+
+DESCRIPTION="irc to IM gateway that support multiple IM protocols"
+HOMEPAGE="http://www.bitlbee.org/"
+SRC_URI="http://get.bitlbee.org/src/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
+IUSE="debug gnutls ipv6 +jabber libevent msn nss +oscar otr +plugins purple ssl test twitter +yahoo xinetd" # ldap - Bug 195758
+
+COMMON_DEPEND="purple? ( net-im/pidgin )
+       libevent? ( dev-libs/libevent )
+       !libevent? ( >=dev-libs/glib-2.4 )
+       otr? ( net-libs/libotr )
+       gnutls? ( net-libs/gnutls )
+       !gnutls? (
+               nss? ( dev-libs/nss )
+               !nss? ( ssl? ( dev-libs/openssl ) )
+       )"
+       # ldap? ( net-nds/openldap )"
+DEPEND="${COMMON_DEPEND}
+       dev-util/pkgconfig
+       test? ( dev-libs/check )"
+
+RDEPEND="${COMMON_DEPEND}
+       virtual/logger
+       xinetd? ( sys-apps/xinetd )"
+
+REQUIRED_USE="^^ ( purple || ( jabber msn oscar yahoo ) )
+       msn? ( || ( gnutls nss ssl ) )
+       jabber? ( !nss )"
+
+pkg_setup() {
+       if use jabber && ! use gnutls && ! use ssl ; then
+               einfo
+               elog "You have enabled support for Jabber but do not have SSL"
+               elog "support enabled.  This *will* prevent bitlbee from being"
+               elog "able to connect to SSL enabled Jabber servers.  If you need to"
+               elog "connect to Jabber over SSL, enable ONE of the following use"
+               elog "flags: gnutls or ssl"
+               einfo
+       fi
+
+       enewgroup bitlbee
+       enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
+}
+
+src_prepare() {
+       sed -i \
+               -e "s@/usr/local/sbin/bitlbee@/usr/sbin/bitlbee@" \
+               -e "s/nobody/bitlbee/" \
+               -e "s/}/        disable         = yes\n}/" \
+               doc/bitlbee.xinetd || die "sed failed in xinetd"
+
+       sed -i \
+               -e "s@mozilla-nss@nss@g" \
+               configure || die "sed failed in configure"
+
+       epatch "${FILESDIR}"/${PN}-3.0-configure.patch
+
+       # fix for msn login issues
+       epatch "${FILESDIR}"/${P}-msn-login-fix.patch
+}
+
+src_configure() {
+       # ldap hard-disabled for now
+       local myconf="--ldap=0"
+
+       # setup plugins, protocol, ipv6 and debug
+       for flag in debug ipv6 msn jabber oscar plugins purple twitter yahoo ; do
+               if use ${flag} ; then
+                       myconf="${myconf} --${flag}=1"
+               else
+                       myconf="${myconf} --${flag}=0"
+               fi
+       done
+
+       # set otr
+       if use otr && use plugins ; then
+               myconf="${myconf} --otr=plugin"
+       else
+               if use otr ; then
+                       ewarn "OTR support has been disabled automatically because it"
+                       ewarn "requires the plugins USE flag."
+               fi
+               myconf="${myconf} --otr=0"
+       fi
+
+       # setup ssl use flags
+       if use gnutls ; then
+               myconf="${myconf} --ssl=gnutls"
+               einfo "Using gnutls for SSL support"
+       elif use ssl ; then
+               myconf="${myconf} --ssl=openssl"
+               einfo "Using openssl for SSL support"
+       elif use nss ; then
+               myconf="${myconf} --ssl=nss"
+               einfo "Using nss for SSL support"
+       else
+               myconf="${myconf} --ssl=bogus"
+               einfo "You will not have any encryption support enabled."
+       fi
+
+       # set event handler
+       if use libevent ; then
+               myconf="${myconf} --events=libevent"
+       else
+               myconf="${myconf} --events=glib"
+       fi
+
+       # NOTE: bitlbee's configure script is not an autotool creation,
+       # so that is why we don't use econf.
+       ./configure --prefix=/usr --datadir=/usr/share/bitlbee \
+               --etcdir=/etc/bitlbee --plugindir=/usr/$(get_libdir)/bitlbee \
+               --strip=0 ${myconf} || die "econf failed"
+
+       sed -i \
+               -e "/^EFLAGS/s:=:&${LDFLAGS} :" \
+               Makefile.settings || die "sed failed"
+}
+
+src_install() {
+       emake install install-etc install-doc install-dev DESTDIR="${D}"
+
+       keepdir /var/lib/bitlbee
+       fperms 700 /var/lib/bitlbee
+       fowners bitlbee:bitlbee /var/lib/bitlbee
+
+       dodoc doc/{AUTHORS,CHANGES,CREDITS,FAQ,README}
+       dodoc doc/user-guide/user-guide.txt
+       dohtml doc/user-guide/*.html
+
+       doman doc/bitlbee.8 doc/bitlbee.conf.5
+
+       if use xinetd ; then
+               insinto /etc/xinetd.d
+               newins doc/bitlbee.xinetd bitlbee
+       fi
+
+       newinitd "${FILESDIR}"/bitlbee.initd bitlbee
+       newconfd "${FILESDIR}"/bitlbee.confd bitlbee
+
+       keepdir /var/run/bitlbee
+       fowners bitlbee:bitlbee /var/run/bitlbee
+
+       exeinto /usr/share/bitlbee
+       cd utils
+       doexe convert_purple.py bitlbee-ctl.pl
+}
+
+pkg_postinst() {
+       chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
+       chown -R bitlbee:bitlbee "${ROOT}"/var/run/bitlbee
+
+       einfo
+       elog "The utils included in bitlbee are now located in /usr/share/bitlbee"
+       elog
+       elog "NOTE: The IRSSI script is no longer provided by BitlBee."
+       elog
+       elog "The bitlbeed init script has been replaced by bitlbee."
+       elog "You must update your configuration."
+       einfo
+}
diff --git a/net-im/bitlbee/files/bitlbee-3.0.3-msn-login-fix.patch b/net-im/bitlbee/files/bitlbee-3.0.3-msn-login-fix.patch
new file mode 100644 (file)
index 0000000..1fcc8bd
--- /dev/null
@@ -0,0 +1,31 @@
+fix for msn login failures
+
+http://bugs.bitlbee.org/bitlbee/changeset/devel,824
+--- lib/http_client.c.old
++++ lib/http_client.c
+@@ -313,7 +313,7 @@
+               req->status_code = -1;
+       }
+       
+-      if( ( req->status_code == 301 || req->status_code == 302 ) && req->redir_ttl-- > 0 )
++      if( ( req->status_code >= 301 && req->status_code <= 303 ) && req->redir_ttl-- > 0 )
+       {
+               char *loc, *new_request, *new_host;
+               int error = 0, new_port, new_proto;
+@@ -374,10 +374,13 @@
+                       /* So, now I just allocated enough memory, so I'm
+                          going to use strcat(), whether you like it or not. :-) */
+                       
+-                      sprintf( new_request, "GET %s HTTP/1.0", url->file );
++                      s = 0;
++                      sprintf( new_request, "%s %s HTTP/1.0\r\nHost: %s",
++                              req->status_code == 303 || req->request[0] == 'G' ? "GET" : "POST", url->file, url->host );
++                      s = ' ';
+                       
+-                      s = strstr( req->request, "\r\n" );
+-                      if( s == NULL )
++                      if( !( ( s = strstr( req->request, "\r\nHost: " ) ) &&
++                              ( s = strstr( s + strlen( "\r\nHost: " ), "\r\n" ) ) ) )
+                       {
+                               req->status_string = g_strdup( "Error while rebuilding request string" );
+                               g_free( new_request );