impact of move to http/1.0

marca@ncsa.uiuc.edu (Marc Andreessen)
Date: Wed, 25 Aug 93 02:25:01 -0500
From: marca@ncsa.uiuc.edu (Marc Andreessen)
Message-id: <9308250725.AA01751@wintermute.ncsa.uiuc.edu>
To: www-talk@nxoc01.cern.ch
Subject: impact of move to http/1.0
X-Md4-Signature: bceb9e0300973e08fe95f6fa5acddae1
Status: RO
I'm becoming concerned about the impending move to HTTP/1.0 compliance
on behalf of all known clients.  Why?  The following code:

    fields = sscanf(line_buffer, "%20s%d",
                    server_version,
                    &server_status);
    
    if (fields < 2) 
      {			/* HTTP0 reply */
        ...
      } 
    else 
      {                 /* HTTP/1.0 reply */
        ...
      }

This is how the client library, and therefore the clients, figure out
whether they're talking to a HTTP0 or HTTP/1.0 server on the fly.
(The precept is that if the first "line" -- in quotes because, despite
various sources of resistance, binary data often flies across HTTP0
now -- of the received data stream is something like "HTTP/1.0 200
Document follows", then the client knows it's talking to a HTTP/1.0
server.  If not, then it's a HTTP0 server.)

So any file such a client accesses that resides on a HTTP0 server and
begins with a sequence of bytes that matches such a pattern is going
to fool the client into thinking it is talking to a HTTP/1.0 server,
and the data will therefore be interpreted incorrectly.

This problem will up and go away if (a) everyone switches to HTTP/1.0
across the board practically immediately or (b) nobody ever serves
such a file from a HTTP0 server.  I'm not sure how likely either of
these scenarios is, but I've got a bad feeling about it.

So.... does anyone have any other ideas on how to handle this
situation?

Cheers,
Marc