[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Premature eof-object ?

Quoting =?iso-8859-1?Q?Jens_Axel_S=F8gaard?=:
> The copy I made on my own web server http://www.jensaxel.dk/db.gif can be
> downloaded
> with no problems.

Is www.yahoo.com the server that gives you problems?

Large-file downloads from Yahoo's web server are truncated for me ---
unless I comment out the line in the URL library that closes the
client->server half of the TCP connection. If I leave that half open,
the download completes (though I run out of file descriptors after a

In other words, Yahoo's web server seems to be reacting to the closure
of the client->server half of the connection by shutting down the
server->client half.

Are HTTP clients obliged to keep both halves of the TCP connection
open? Or is it just that a browser implemented directly with sockets
wouldn't bother closing half of the connection, so Yahoo can be
agressive about shutting down connections at the least provocation?

MzScheme could provide a `tcp-abandon-port' function that is like
`close-{input,output}-port', except that abandoning doesn't shut down
half of a TCP connection. Instead, when a TCP port is abandoned,
MzScheme would wait until the other half is closed/abandoned, and then
close the connection completely. Probably that's what we need for the
"url.ss" library.

To get back to the original question: I'm fairly certain that the
port-reading operations are working properly; I think the server really
is sending an EOF mid-way through the image download.