Ethereal-dev: [ethereal-dev] packet-http.c

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Biot Olivier <Olivier.Biot@xxxxxxxxxxxxxxx>
Date: Thu, 27 Sep 2001 11:32:22 +0200
Hi all,

Is it a lot of work to implement conversations in packet-http.c so heuristic
dissection can be avoided (every now and then, an "HTTP Continuation"
contains binary data that accidentally matches the heuristic, resulting in
the displaying of a data line as if it were a valid header.  This can be
tedious when processing text output from (t)ethereal because today one has
to check every HTTP Continuation packet by hand and then manually delete the
erratic lines.

It is possible to attach information to a conversation, so if either HTTP
request or HTTP response are split across several TCP packets (both
currently mapped to "HTTP Continuation"), they can still be displayed
correctly.  Four mutex conditions are required to exist:

( request_header <-> request-data ) <-> ( response-header <-> response-data
).

The only tricky one is the HTTP CONNECT method, since the Content-Type is a
tunnel (so bidirectional data flows between the 2 ends).

Any comments?

Regards,

Olivier