Subject: Re: bug#15905: 24.3; url-copy-file sometimes silently downloads garbage or incomplete file

From: Ryan <[email-masked]>
Date: Mon, 18 Nov 2013 12:30:49 -0800

On Mon Nov 18 11:52:16 2013, Ryan C. Thompson wrote:
> On Mon 18 Nov 2013 11:13:18 AM PST, Ted Zlatanov wrote:
>> On Sat, 16 Nov 2013 20:53:41 -0800 Ryan <[email-masked]> wrote:
>>
>> R> On Sat Nov 16 15:27:18 2013, Ted Zlatanov wrote:
>>>> On Fri, 15 Nov 2013 08:13:13 -0800 Ryan <[email-masked]> wrote:
>>>>
>> R> In my experience, somewhere around 10% to 20% of the time the
>> R> downloaded file has some kind of anomaly. Anomalies that I have
>> R> observed so far include:
>>>>
>> R> - the file is not completely retrieved;
>>>>
>> R> - the file is complete, but has the following text appended:
>>>>
>>>>>> 0
>>>>>>
>>>>>> - Peer has closed the GnuTLS connection
>>>>
>> R> - the file contains only an HTTP header and nothing else:
>>>>
>>>>>> HTTP/1.1 200 OK
>>>>>> Server: GitHub.com
>>>>>> Date: Thu, 14 Nov 2013 20:54:41 GMT
>>>>>> Content-Type: text/plain; charset=utf-8
>>>>>> Transfer-Encoding: chunked
>>>>>> Status: 200 OK
>>>>>> Strict-Transport-Security: max-age=31536000
>>>>>> X-XSS-Protection: 1; mode=block
>>>>>> X-Content-Type-Options: nosniff
>>>>>> X-UA-Compatible: chrome=1
>>>>>> Access-Control-Allow-Origin: https://render.github.com
>>>>
>> R> In all cases, "url-copy-file" returns t as if the retrieval was
>> R> completely successful, so the only way to detect these anomalies
>> is to
>> R> inspect the file's content.
>>>>
>>>> It's hard to tell from the bug report; can you tell us if your
>>>> Emacs is
>>>> compiled with the GnuTLS library?  (the output of `configure' would
>>>> help, or tell us where you got the binary).
>>
>> R> I believe I got my Emacs from http://emacsformacosx.com/. I don't
>> know
>> R> the configuration details of it.
>>
>> That build doesn't have GnuTLS support, so you're running an external
>> binary (`gnutls-cli' or something similar).  I haven't seen the problems
>> you report on Mac OS X (tried with the emacsformacosx build), so it may
>> be something specific to your system.  Can you see if any other users of
>> the emacsformacosx build can confirm the bug?
>>
>> Ted
>
> So, I just ran my own test case on my work machine (Ubuntu 13.04,
> Emacs 24.2.1 lucid build from Ubuntu repos), and I did not see the
> issue. I'm going to try compiling Emacs with gnutls support on my OSX
> machine to see if that makes any difference.

I ran my test case with Emacs built from Macports, which compiles Emacs 
with GnuTLS support. On this Emacs, the test did not trigger the bug. I 
think we can say that the bug manifests when using an external 
gnutls-cli or similar.