You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2002/05/31 16:58:43 UTC

DO NOT REPLY [Bug 9541] New: - httpd on Win XP transmit garbage if element size >32K

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9541>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9541

httpd on Win XP transmit garbage if element size >32K

           Summary: httpd on Win XP transmit garbage if element size >32K
           Product: Apache httpd-1.3
           Version: 1.3.24
          Platform: PC
               URL: http://pmcferrin.ugate.net:81/photos/Live_Nature/
        OS/Version: Windows XP
            Status: NEW
          Severity: Blocker
          Priority: Other
         Component: Other
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: paulmcferrin@worldnet.att.net


In moving my existing Apache 1.3.22 [bindist] (Cygwin based) to my Windows XP 
platform (Cygwin based), I have encountered two problems.  The first problem 
(can't fork) was due to a cygwin problem that required me to rebase all of the 
DLLs.  After rebasing the DLLs, the httpd now starts.  First problem is solved!  
See below for details to solve this problem.

Second problem...a show stopper

When viewing any page that has elements over approx 32KB in size, all bytes 
beyond the 32KB boundary is garbage!  If you have images on the page, only the 
1st 32KB of the image is intact.  The rest is garbage.  The total downloaded 
image size is correct!  If you download a file (http) and save it, only the 1st 
32KB will be correct, the remainder of correct size will be garbage.

When I compare the download images & files with the source file, the diffeence 
begins at byte offset 32769.  Files & elemments less than 32KB in size are 
loaded correctly.  If the HTML page itself is over 32KB (no graphics), the page 
is corrupted beyond the 32KB boundary.

I then upgraded to the latest httpd release for Cygwin [bindist] (1.3.24) and 
the same problem appears.  When I look at the error_log file, there is nothing 
of consequence being logged.  I'm running Cygwin DLL version 1.3.6.

At least one other user on the Cygwin mailing list is having the same problem 
with data corruption beyond 32K on Win XP.  I have made several posts to the 
cygwin mailing lists but no one has taken the bite as it is not clear it is a 
Cygwin problem.  This problem is present only on the Win XP system.  I'm running 
the Professional version.

You can access my webserver on port 81 to see the problem at:

        http://pmcferrin.Ugate.Net:81/photos/Live_Nature/

These images are loaded correctly when using the httpd server on my Win 98 
system or if I point my browser to the hard disk.

In the first problem, the following rebase command was executed (a requirement):

cd /bin
cp cygwin1.dll Ncygwin1.dll
rebase -d -b 0x68000000 -o 0x100000 \
N.cygwin1.dll \
cygreadline4.dll \
cygpng2.dll \
cygpanel6.dll \
cygpanel5.dll \
cygncurses6.dll \
cygncurses5.dll \
cygncurses++6.dll \
cygncurses++5.dll \
cygmenu6.dll \
cygmenu5.dll \
cygjpeg6b.dll \
cygjbig1.dll \
cygitk30.dll \
cygitcl30.dll \
cygintl.dll \
cygintl-1.dll \
cyghistory5.dll \
cyghistory4.dll \
cyggdbm.dll \
cygform6.dll \
cygform5.dll \
cygexslt-0.dll \
cygcrypto.dll \
cygbz21.0.dll \
cygXpm-noX4.dll \
cygXpm-X4.dll \
O.cygwin1.dll \
cygtcl80.dll \
cygssl.dll \
cygreadline5.dll

cd /usr/local/apache/libexec
rebase -d -b 0x64000000 -o 0x100000 \
libproxy.dll \
mod_access.dll \
mod_actions.dll \
mod_alias.dll \
mod_asis.dll \
mod_auth.dll \
mod_auth_anon.dll \
mod_auth_dbm.dll \
mod_autoindex.dll \
mod_cern_meta.dll \
mod_cgi.dll \
mod_digest.dll \
mod_dir.dll \
mod_env.dll \
mod_expires.dll \
mod_headers.dll \
mod_imap.dll \
mod_include.dll \
mod_info.dll \
mod_log_config.dll \
mod_mime.dll \
mod_mime_magic.dll \
mod_negotiation.dll \
mod_rewrite.dll \
mod_setenvif.dll \
mod_speling.dll \
mod_status.dll \
mod_unique_id.dll \
mod_userdir.dll \
mod_usertrack.dll \
mod_vhost_alias.dll

After remapping the above DLLs, I then exited ALL cygwin process so that the 
cygwin1.dll would unload.  Using an MS-DOS window, I moved file N.cygwin1.dll to 
cygwin1.dll.  I then restarted everything.

If you fail to remap all of the DLL, the httpd will not start with n error 
message similar to:
C:\cygwin\usr\local\apache\bin\httpd.exe: *** unable to remap 
C:\cygwin\usr\loca
l\apache\libexec\mod_vhost_alias.dll to same address as 
parent -- 0x470000
11026126 [main] httpd 1248 sync_with_child: child 1796(0x6F0) died before 
initialization with status code 0x111058895 [main] httpd 1248 sync_with_child: 
*** child state child loading dlls
[Thu May 30 00:49:25 2002] [error] (11)Resource temporarily unavailable: fork: 
Unable to fork new process

Like I previously said, the above fork problem has been resolved.  If you do not 
have a copy of the cygwin "rebase" command, you can get a copy at:
   http://pmcferrin.Ugate.Net/download/

As you can imagine, the Cygwin HTTPD is not very functional on Win XP under 
Cygwin.  My reason for staying with Cygwin is the use of symbolic links.

I have posted this problem to both the Apache HTTPD and Cygwin Users mailing 
list but have not received any help.  Help!

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org