On Wed, 2009-06-24 at 08:09 -0500, Elmar Krieger wrote: > >> Dear Apache users, > >> > >> I'm forced to write yet another program that downloads HTTP files from > >> an > >> Apache server, > > ... > > Naive question : why would you do that, when there are probably at least > > 10 existing libraries/utilities that already do that, and do it right ? > > > > I mean that downloading a file from a webserver is not just a matter of > > opening a socket and reading bytes from it. There are such things as > > status codes, HTTP headers, encoding, transfer-encoding, etc.. > > Do you really want to re-invent the wheel ? > > I did of course start with code from the web, but that was not reliable > enough. For example the download routines of Firefox and Safari are not > satisfactory, because they also hang forever occasionally, and don't > automatically restart the transfer with a new request. I need it 100% > fool-proof. > > Anyway, could you point me to the most reliable public domain (not GNU > GPL) library you know, that compiles in Linux, Windows and MacOSX? Then I > can compare the code.. > > And any idea under which circumstances a recv() from a socket connection > to Apache can report -1/errno=EAGAIN for an hour without progress would > still be appreciated. It's a server side problem, because it happens from > clients all over the world ;-) > > Thanks for your help, > Elmar > > I can download all sorts of large files from apache, it truly Works For Me, so this certainly sounds like a naive client app rather than a server side bug. Any reason why you aren't using curl/libcurl/wget/libfetch? When there are BSD licensed wheels out there, don't design your own.. Eg: http://curl.haxx.se/ (MIT) http://curl.haxx.se/libcurl/ (MIT) http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libfetch/ (BSD) Curl has a list of the FOSS http libraries: http://curl.haxx.se/libcurl/competitors.html HTH Tom --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx