summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-mail/checkgmail')
-rw-r--r--net-mail/checkgmail/ChangeLog5
-rw-r--r--net-mail/checkgmail/Manifest5
-rw-r--r--net-mail/checkgmail/checkgmail-1.13-r1.ebuild36
-rw-r--r--net-mail/checkgmail/checkgmail-1.13.ebuild34
-rw-r--r--net-mail/checkgmail/files/gmail-login-procedure-fix.patch47
5 files changed, 91 insertions, 36 deletions
diff --git a/net-mail/checkgmail/ChangeLog b/net-mail/checkgmail/ChangeLog
index bd8b76cd6..62b922306 100644
--- a/net-mail/checkgmail/ChangeLog
+++ b/net-mail/checkgmail/ChangeLog
@@ -2,6 +2,11 @@
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 26 Aug 2009; Grygoriy Fuchedzhy (gry) <grygoriy.fuchedzhy@gmail.com>
+ -checkgmail-1.13.ebuild, +checkgmail-1.13-r1.ebuild,
+ +files/gmail-login-procedure-fix.patch:
+ Fixed login procedure for checkgmail-1.13
+
16 Mar 2009; Nick Fortino (nfortino) <nfortino@gmail.com>
checkgmail-1.13.ebuild:
Update ebuild to use EAPI 2. Thanks to Cristian Ruppert and Thomas Sachau
diff --git a/net-mail/checkgmail/Manifest b/net-mail/checkgmail/Manifest
index 1262579c1..4c03ca01a 100644
--- a/net-mail/checkgmail/Manifest
+++ b/net-mail/checkgmail/Manifest
@@ -1,4 +1,5 @@
+AUX gmail-login-procedure-fix.patch 2366 RMD160 bc338296771e1e7a81af6a2af3432dbdaeae50fc SHA1 5d78f9001574a7360c4a4175de67d6604b337253 SHA256 c91c1006494e58b1feefa5f74824f7ebdd4094ace516460fd97c4c9b131fc528
DIST checkgmail-1.13.tar.bz2 58388 RMD160 f3a89ca6cde0499a70e14e91e988e20f0064d911 SHA1 d4b928838746975608803a79c258872b0dc8ccf9 SHA256 af191b34fd70748b050cdd233d3153e0cc5a334a72fc9a46519bbbecdb295e5d
-EBUILD checkgmail-1.13.ebuild 807 RMD160 46ef398fff6a2abdc675609cfdc4d826677d350a SHA1 41e7756ae0ea2b17ffd48a59e8d8d2a1ed7135fc SHA256 4b4ea72f42b4b2443a5acfc973b613f692968a5d697b9184770795b910aa9054
-MISC ChangeLog 1234 RMD160 df6aac9b9a2ba1e915fe75f399dcd37962890756 SHA1 5a4d85160ba62cbf78d10eaff2446c0e0c17e9f0 SHA256 79188f51a509b09fa3a76b909af043ad72778377e2933f6464e7ad32f7320d3d
+EBUILD checkgmail-1.13-r1.ebuild 878 RMD160 12c144e969a0db35c8094f0599339ae9d3d6d4c6 SHA1 b96de82ed4e09149e1734c561f9c2dd1a1c52251 SHA256 73563574c60690be7c1ef59fcdd179685d62a863164a883f1a55c415d08d429e
+MISC ChangeLog 1447 RMD160 3c9c728bc010e237f1be0e5d167cc642bc61dd33 SHA1 95005196ca8077e96b1ea4d2720904d409c8af8a SHA256 23ecb8dfbab37a1167038a737282e389c6abaf6e5e12a0deeca5e7b34d3cbcba
MISC metadata.xml 360 RMD160 6f4fd23e788f691588791d7e2b726fe59f86420a SHA1 6166a60c03586fe2773a26b568d611230b0c0f6d SHA256 6367f0aa6816883df52d1e5295013da9d263cdb385310ccef4d83771323dcb6a
diff --git a/net-mail/checkgmail/checkgmail-1.13-r1.ebuild b/net-mail/checkgmail/checkgmail-1.13-r1.ebuild
new file mode 100644
index 000000000..2f16a818e
--- /dev/null
+++ b/net-mail/checkgmail/checkgmail-1.13-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="2"
+
+inherit eutils
+
+DESCRIPTION="a Gmail Notifier for Linux"
+HOMEPAGE="http://checkgmail.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="clickurl savepwd"
+
+RDEPEND="dev-lang/perl[ithreads]
+ dev-perl/gtk2-perl
+ dev-perl/gtk2-trayicon
+ dev-perl/libwww-perl
+ dev-perl/Crypt-SSLeay
+ dev-perl/XML-Simple
+ clickurl? ( dev-perl/Gtk2-Sexy )
+ savepwd? ( dev-perl/Crypt-Simple )"
+
+src_prepare() {
+ # This patch combines changes from svn revisions r30, r33 and r36
+ epatch "${FILESDIR}"/gmail-login-procedure-fix.patch
+}
+
+src_install() {
+ dobin checkgmail || die "dobin failed"
+ dodoc ChangeLog Readme todo || die "dodoc failed"
+ doman man/checkgmail.1.gz || die "doman failed"
+}
diff --git a/net-mail/checkgmail/checkgmail-1.13.ebuild b/net-mail/checkgmail/checkgmail-1.13.ebuild
deleted file mode 100644
index 0320470fb..000000000
--- a/net-mail/checkgmail/checkgmail-1.13.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI="2"
-
-inherit eutils
-
-DESCRIPTION="a Gmail Notifier for Linux"
-HOMEPAGE="http://checkgmail.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="clickurl savepwd"
-
-DEPEND="dev-lang/perl[ithreads]
- >=dev-perl/gtk2-perl-1.100
- >=dev-perl/gtk2-trayicon-0.03
- >=dev-perl/libwww-perl-5.800
- >=dev-perl/Crypt-SSLeay-0.49
- >=dev-perl/XML-Simple-2.12
- >=x11-libs/gtk+-2.6
- clickurl? ( >=x11-libs/libsexy-0.1.11
- >=dev-perl/Gtk2-Sexy-0.02 )
- savepwd? ( >=dev-perl/Crypt-Simple-0.06 )"
-RDEPEND="${DEPEND}"
-
-src_install() {
- dobin checkgmail || die "dobin failed"
- dodoc ChangeLog Readme todo
- doman man/checkgmail.1.gz
-}
diff --git a/net-mail/checkgmail/files/gmail-login-procedure-fix.patch b/net-mail/checkgmail/files/gmail-login-procedure-fix.patch
new file mode 100644
index 000000000..e1ef97892
--- /dev/null
+++ b/net-mail/checkgmail/files/gmail-login-procedure-fix.patch
@@ -0,0 +1,47 @@
+diff -dupr checkgmail-1.13.orig/checkgmail checkgmail-1.13/checkgmail
+--- checkgmail-1.13.orig/checkgmail 2009-08-25 23:48:18.615575505 +0200
++++ checkgmail-1.13/checkgmail 2009-08-26 00:13:05.535569237 +0200
+@@ -682,6 +682,7 @@ sub http_check {
+
+ # set up the useragent ....
+ $ua = LWP::UserAgent->new();
++ $ua->requests_redirectable (['GET', 'HEAD', 'POST']);
+
+ # set time-out - defaults to 90 seconds or $delay, whichever is shorter
+ $ua->timeout($delay/1000<90 ? $delay/1000 : 90);
+@@ -716,14 +717,21 @@ sub http_check {
+ unless ($hosted) {
+ # Normal Gmail login action ...
+ $error = http_get("https://www.google.com/accounts/ServiceLoginAuth?ltmpl=yj_wsad&ltmplcache=2&continue=https%3A%2F%2Fmail.google.com%2Fmail%3F&service=mail&rm=false&ltmpl=yj_wsad&Email=$URI_user&Passwd=$URI_passwd&rmShown=1&null=Sign+in", "LOGIN");
+- # $cookie_jar->scan(\&scan_at);
++
++ $cookie_jar->scan(\&scan_at);
++ unless ($error || !$gmail_sid || !$gmail_gausr) {
++ $error = http_get("https://mail.google.com/mail/?pli=1&auth=$gmail_sid&gausr=$gmail_gausr", 'LOGIN');
++ }
++
+ # $error = http_get("https://mail.google.com/mail?nsr=0&auth=$gmail_sid&gausr=$gmail_gausr", "LOGIN");
+
+ } else {
+ # hosted domains work differently ...
+ # First we POST a login
+- $error = http_get("https://www.google.com/a/$hosted/LoginAction|at=null&continue=http%3A%2F%2Fmail.google.com%2Fa%2F$hosted&service=mail&userName=$URI_user&password=$URI_passwd", "POST");
+-
++ # $error = http_get("https://www.google.com/a/$hosted/LoginAction|at=null&continue=http%3A%2F%2Fmail.google.com%2Fa%2F$hosted&service=mail&userName=$URI_user&password=$URI_passwd", "POST");
++ # thanks to Olinto Neto for this fix for hosted domains:
++ $error = http_get("https://www.google.com/a/$hosted/LoginAction2|at=null&continue=http%3A%2F%2Fmail.google.com%2Fa%2F$hosted&service=mail&Email=$URI_user&Passwd=$URI_passwd", "POST");
++
+ # Then we grab the HID ("Hosted ID"?) cookie
+ $cookie_jar->scan(\&scan_at);
+
+@@ -840,8 +848,10 @@ sub http_get {
+ if ($http =~ m/location\.replace\("(.*)"\)/) {
+ my $new_addr = $1;
+ $new_addr =~ s/\\u003d/=/g;
++ $new_addr =~ s/\\x3d/=/g;
+ $new_addr =~ s/\\075/=/g;
+ $new_addr =~ s/\\46/&/g;
++ $new_addr =~ s/\\x26/&/g;
+ $new_addr =~ s/\\75/=/g;
+ return unless $new_addr =~ m/^http/i;
+