Over the last few days I have been trying to fix the httpd code to allow downloads of large files. What I have found is that Apache seems to be doing everything right but the web browsers have a problem with large files. If the content-length header is set and the length is over 2 gig, all browsers seem to have problems and will not download the file. I have been able to download files under 2 gig without any problem. With some browsers I am able to download files greater than 2 gig if the content-length header is not set. However, none of the browsers that I have tried will allow me to download a file greater than 4 gig. I have attached 2 patches that seem to work on the NetWare platform with large file support enabled. The patch for protocol.c will only set the content-length header if the content is less than 0x80000000. The question is, is this an appropriate thing to do?
FYI, The results of the different browsers has been interesting. IE seems to do OK when downloading a file that is less than 4 gig. Netscape 7.1 and Mozilla both show the progress up to the 2 gig point and then the number of bytes recieved goes negative. After that point Netscape gets confused and gives up while Mozilla continues up to the 4 gig size before stopping. Opera also seemed to get confused at around the 2 gig point. Brad Brad Nicholes Senior Software Engineer Novell, Inc., the leading provider of Net business solutions http://www.novell.com
protocol.c.patch
Description: Binary data
core.c.patch
Description: Binary data