impact of move to http/1.0

Marc Andreessen (marca@ncsa.uiuc.edu)
Wed, 25 Aug 93 02:25:01 -0500


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