httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert S. Thau" <...@ai.mit.edu>
Subject Re: Question about Apache on Solaris (fwd)
Date Wed, 02 Oct 1996 18:39:19 GMT
          I've been corresponding with someone at Sun trying to get the
  Solaris fd/stdio bug fixed and he offered the following ugly
  workaround. I was wondering what people thought of it:

As a general rule, I think vendors with an interest in superior
support for Apache ought to fix deficiencies in their own software,
rather than lard up ours with workarounds.  And for this one, "evil"
is too kind.

You know, when Sun goes to full 64-bit support, they'll have to lose
binary compatibility anyway, because all the pointers in the FILE
structure have to be widened.  At that point, which ought to be soon,
they can just fix the thing right.  But if Sun *won't* be doing this
soon[1], I guess they need some kind of workaround in the meantime.

However, I don't see what stops them from adopting HP's approach of
sticking the high bits of the file descriptor somewhere in the sixteen
bits of preexisting padding at the end of the FILE structure (or just
using it as a plain 16-bit _file member, and duplicating the eight
lowermost bits in the current position for the sake of old binaries).

Maybe I'm missing something, but it sure looks to me like this would
allow newly compiled software and libraries to actually work, while
leaving stale binaries no more broken than they were before.  (So long
as all fds are below 256, stale binaries can't tell the difference;
when there are more than that, they were broken anyway.  And so long
as -lsocket, NIS, etc., were rebuilt to use the full-width fileno()
--- if they even care! --- a newly compiled Apache would just work).

rst

[1] Last I saw it on lUSENET, there was a FAQ someplace claiming 1998.
    At the rate things are going, it wouldn't be much of a surprise
    for SparcLinux to be fully 64-bit on Sun hardware before
    Solaris...


Mime
View raw message