FS#36207 - [gnutls] Epiphany fails to log into outlook.com

Attached to Project: Arch Linux
Opened by Mark E. Lee (bluerider) - Saturday, 20 July 2013, 03:01 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 26 July 2013, 15:50 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 3
Private No


After upgrading to gnutls 3.2.2-1, I cannot login to https://www.outlook.com. I get the following error:

Error reading data from TLS socket: Decryption has failed.

Additional info:
epiphany 3.8.2-1
gnutls 3.2.2-1

Steps to reproduce:
Try to login to https://www.outlook.com with epiphany 3.8.2-1 and gnutls 3.2.2-1
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Friday, 26 July 2013, 15:50 GMT
Reason for closing:  Fixed
Additional comments about closing:  3.2.2-2
Comment by Zulu (smoon) - Saturday, 20 July 2013, 20:11 GMT
Looks like a related problem: #36212
Comment by Andreas Radke (AndyRTR) - Saturday, 20 July 2013, 20:27 GMT
Please report it upstream!
Comment by Mark E. Lee (bluerider) - Sunday, 21 July 2013, 16:54 GMT
I've reported it to the epiphany mailing list (since I've reported several bugs to Gnome's bug tracker, only to find no responses).
Comment by Andreas Radke (AndyRTR) - Sunday, 21 July 2013, 18:34 GMT
This is a gnutls issue!
Comment by qh doe (qh) - Wednesday, 24 July 2013, 07:57 GMT Comment by Mark E. Lee (bluerider) - Thursday, 25 July 2013, 00:20 GMT
I've reported the error to the epiphany bugzilla as well (see : <https://bugzilla.gnome.org/show_bug.cgi?id=704749>)
Comment by Mark E. Lee (bluerider) - Thursday, 25 July 2013, 00:39 GMT
I've generated a PKGBUILD for the GIT BISECT. Since I don't have a website that definitely doesn't work, one needs to install the pkg built with makepkg, test it out, and if it works, run makepkg again. :

# $Id: PKGBUILD 191197 2013-07-19 17:34:12Z andyrtr $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor : Mark Lee <mark@markelee.com>

## Editted to conduct git bisect

pkgdesc="A library which provides a secure layer over a reliable transport layer"
arch=('i686' 'x86_64')
license=('GPL3' 'LGPL2.1')
options=('!libtool' '!zipman')
depends=('gcc-libs' 'libtasn1' 'readline' 'zlib' 'nettle' 'p11-kit')
makedepends=('valgrind' 'strace' 'datefudge')

## grab source from the git repo

## mark the last good git revision
_gitgood='gnutls_3_2_1'; ## last commit that updated to v3.2.1

prepare() { ## prepare for git bissecting

[ -d "${srcdir}/$_gitname" ] || ( ## check if the git repo already exists
msg "Connecting to GNUTLS GIT server";
git clone "${_gitroot}" "${_gitname}" && ## obtain the source files from git
msg "GIT checkout done."

msg "Entering git source directory";
cd "${srcdir}/$_gitname" && ## enter local git repo directory
[ -e ".git/BISECT_LOG" ] && ( ## check if a git bisect log exists
msg "Continuing git bisect";
git bisect good; ## notify git that this is a good revision
) || ( ## start git bisect
msg "Starting git bisect...";
git bisect start &&
msg "Marking current revision bad...";
git bisect bad;
git bisect good ${_gitgood}; ## mark the last good revision

build() { ## enter the build directory

cd "${srcdir}/$_gitname";
make autoreconf # Will generate ./configure script (as per http://www.gnutls.org/devel.html)
./configure --prefix=/usr \
--with-zlib \
--disable-static \
--disable-guile \
--disable-valgrind-tests \
make clean && make; ## clean the build directory and build

check() {
cd "${srcdir}/$_gitname";
#make -k check
make -j1 check

package() {
cd "${srcdir}/$_gitname";
make DESTDIR="${pkgdir}" install

# # lots of .png files are put into infodir and are gzipped by makepkg! this may need to be fixed by using !zipman
# # gzip -9 all files in infodir and manpages manually
# find "$pkgdir/usr/share/info" -name '*.info*' -exec gzip -9 {} \;
# find "$pkgdir/usr/share/man" -exec gzip -9 {} \;
Comment by Mark E. Lee (bluerider) - Thursday, 25 July 2013, 00:51 GMT
if someone's got a website that definitely fails in gnutls-cli (cause outlook.com doesn't), we can just create a wrapper script around this PKGBUILD and have it run until gnutls-cli fails.
Comment by Mark E. Lee (bluerider) - Thursday, 25 July 2013, 06:24 GMT
This bug report should probably be merged with 36212, the errors are related.
Comment by Mark E. Lee (bluerider) - Thursday, 25 July 2013, 20:57 GMT
I did the git bisect and got the the error to have started at commit: f03756387e6bd3f1e99b2799e1931544725d4221
Comment by Andreas Radke (AndyRTR) - Thursday, 25 July 2013, 21:24 GMT
Thanks. Report this to the gnutls-bugs/devel-ML or the upstream report that Nikos knows it.
Comment by Mark E. Lee (bluerider) - Thursday, 25 July 2013, 21:34 GMT
I have already reported it to Nikos; he says that he thinks the offending commit is: 0665b9e Eliminated memory copy on decryption.
Comment by Mark E. Lee (bluerider) - Friday, 26 July 2013, 15:21 GMT
Nikos offered a patch : <http://lists.gnutls.org/pipermail/gnutls-devel/2013-July/006385.html>

I tried it out and it works.