Package: libcurl3-gnutls
Version: 7.26.0-1
Severity: normal

Hi.

I've compiled the https.c example (http://curl.haxx.se/libcurl/c/https.html), 
adapted to connect to fusionforge.int-evry.fr on port 443, adding :
 curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
 #define SKIP_PEER_VERIFICATION 1
 #define SKIP_HOSTNAME_VERIFICATION 1
with :
$ gcc -g -o https https.c -l curl

I'm getting :
$ ./https 
* About to connect() to fusionforge.int-evry.fr port 443 (#0)
*   Trying 157.159.11.57...
* connected
* Connected to fusionforge.int-evry.fr (157.159.11.57) port 443 (#0)
* found 0 certificates in /etc/ssl/certs/ca-certificates.crt
* gnutls_handshake() failed: A TLS warning alert has been received.
* Closing connection #0
* SSL connect error
curl_easy_perform() failed: error 35
curl_easy_perform() failed: SSL connect error

It looks like a handshake error, but I cannot manage to go any further at 
understanding the problem.

$ ldd ./https
        linux-gate.so.1 =>  (0xb7794000)
        libcurl-gnutls.so.4 => /usr/lib/i386-linux-gnu/libcurl-gnutls.so.4 
(0xb770f000)
        libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb75b2000)
        libidn.so.11 => /usr/lib/i386-linux-gnu/libidn.so.11 (0xb757e000)
        libssh2.so.1 => /usr/lib/i386-linux-gnu/libssh2.so.1 (0xb7554000)
        liblber-2.4.so.2 => /usr/lib/i386-linux-gnu/liblber-2.4.so.2 
(0xb7545000)
        libldap_r-2.4.so.2 => /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 
(0xb74f3000)
        librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xb74ea000)
        libgssapi_krb5.so.2 => /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 
(0xb74ab000)
        libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb7492000)
        libgnutls.so.26 => /usr/lib/i386-linux-gnu/libgnutls.so.26 (0xb73ca000)
        libgcrypt.so.11 => /lib/i386-linux-gnu/libgcrypt.so.11 (0xb7345000)
        librtmp.so.0 => /usr/lib/i386-linux-gnu/librtmp.so.0 (0xb732b000)
        /lib/ld-linux.so.2 (0xb7795000)
        libresolv.so.2 => /lib/i386-linux-gnu/i686/cmov/libresolv.so.2 
(0xb7316000)
        libsasl2.so.2 => /usr/lib/i386-linux-gnu/libsasl2.so.2 (0xb72fa000)
        libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 
(0xb72e1000)
        libkrb5.so.3 => /usr/lib/i386-linux-gnu/libkrb5.so.3 (0xb720f000)
        libk5crypto.so.3 => /usr/lib/i386-linux-gnu/libk5crypto.so.3 
(0xb71e5000)
        libcom_err.so.2 => /lib/i386-linux-gnu/libcom_err.so.2 (0xb71df000)
        libkrb5support.so.0 => /usr/lib/i386-linux-gnu/libkrb5support.so.0 
(0xb71d6000)
        libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xb71d2000)
        libkeyutils.so.1 => /lib/i386-linux-gnu/libkeyutils.so.1 (0xb71cd000)
        libtasn1.so.3 => /usr/lib/i386-linux-gnu/libtasn1.so.3 (0xb71bb000)
        libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xb71a8000)
        libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xb71a4000)


Note that connecting with a web browser, and allowing the self-signed cert 
exception works.

Initially, my problem was that rapper wouldn't fetch data using libcurl:
$ rapper -f wwwSslVerifyPeer=0 -i rdfa -o turtle 
https://fusionforge.int-evry.fr/
rapper: Error - URI https://fusionforge.int-evry.fr/ - Resolving URI failed: 
gnutls_handshake() failed: A TLS warning alert has been received.

olivier@inf-8657:~/tmp$ ldd /usr/bin/rapper
        linux-gate.so.1 =>  (0xb76ec000)
        libraptor2.so.0 => /usr/lib/libraptor2.so.0 (0xb766e000)
        libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb7511000)
        libcurl-gnutls.so.4 => /usr/lib/i386-linux-gnu/libcurl-gnutls.so.4 
(0xb74ab000)
        libxslt.so.1 => /usr/lib/i386-linux-gnu/libxslt.so.1 (0xb746e000)
        libxml2.so.2 => /usr/lib/i386-linux-gnu/libxml2.so.2 (0xb731b000)
        libyajl.so.2 => /usr/lib/i386-linux-gnu/libyajl.so.2 (0xb7310000)
        /lib/ld-linux.so.2 (0xb76ed000)
        libidn.so.11 => /usr/lib/i386-linux-gnu/libidn.so.11 (0xb72dd000)
        libssh2.so.1 => /usr/lib/i386-linux-gnu/libssh2.so.1 (0xb72b2000)
        liblber-2.4.so.2 => /usr/lib/i386-linux-gnu/liblber-2.4.so.2 
(0xb72a3000)
        libldap_r-2.4.so.2 => /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 
(0xb7251000)
        librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xb7248000)
        libgssapi_krb5.so.2 => /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 
(0xb720a000)
        libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb71f0000)
        libgnutls.so.26 => /usr/lib/i386-linux-gnu/libgnutls.so.26 (0xb7128000)
        libgcrypt.so.11 => /lib/i386-linux-gnu/libgcrypt.so.11 (0xb70a3000)
        librtmp.so.0 => /usr/lib/i386-linux-gnu/librtmp.so.0 (0xb7089000)
        libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xb7063000)
        libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xb705e000)
        liblzma.so.5 => /lib/i386-linux-gnu/liblzma.so.5 (0xb7037000)
        libresolv.so.2 => /lib/i386-linux-gnu/i686/cmov/libresolv.so.2 
(0xb7023000)
        libsasl2.so.2 => /usr/lib/i386-linux-gnu/libsasl2.so.2 (0xb7007000)
        libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 
(0xb6fee000)
        libkrb5.so.3 => /usr/lib/i386-linux-gnu/libkrb5.so.3 (0xb6f1b000)
        libk5crypto.so.3 => /usr/lib/i386-linux-gnu/libk5crypto.so.3 
(0xb6ef1000)
        libcom_err.so.2 => /lib/i386-linux-gnu/libcom_err.so.2 (0xb6eec000)
        libkrb5support.so.0 => /usr/lib/i386-linux-gnu/libkrb5support.so.0 
(0xb6ee3000)
        libkeyutils.so.1 => /lib/i386-linux-gnu/libkeyutils.so.1 (0xb6ede000)
        libtasn1.so.3 => /usr/lib/i386-linux-gnu/libtasn1.so.3 (0xb6ecb000)
        libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xb6eb9000)
        libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xb6eb5000)

There are quite a bunch of hits for similar errors, discussing TLS handshake 
issues, and it seems that quite a lot of problems seem to arrise with libcurl + 
gnutls (see pycurl discussions)... but nothing that I can understand as the 
same issue exactly.

Hope this helps.

Thanks in advance.

Best regards,

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (900, 'testing')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-3-686-pae (SMP w/2 CPU cores)
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libcurl3-gnutls depends on:
ii  libc6              2.13-35
ii  libgcrypt11        1.5.0-3
ii  libgnutls26        2.12.20-1
ii  libgssapi-krb5-2   1.10.1+dfsg-2
ii  libidn11           1.25-2
ii  libldap-2.4-2      2.4.31-1
ii  librtmp0           2.4+20111222.git4e06e21-1
ii  libssh2-1          1.4.2-1
ii  multiarch-support  2.13-35
ii  zlib1g             1:1.2.7.dfsg-13

Versions of packages libcurl3-gnutls recommends:
ii  ca-certificates  20120623

libcurl3-gnutls suggests no packages.

-- no debconf information


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to