Commit graph

58 commits

Author SHA1 Message Date
Stephen Fisher
7a2bfb7a61 Initial version of the new Statistics -> Content List -> HTTP feature. This
feature lists all of the content found in an HTTP stream (images, http, etc.)
and displays it in a list that allows the user to save each one as a file that
is already reassembled by the dissectors.


svn path=/trunk/; revision=20867
2007-02-19 22:37:45 +00:00
Stephen Fisher
d4fffce05f Add comments to the statistics functions to tell which is which
svn path=/trunk/; revision=20852
2007-02-19 05:21:12 +00:00
Stephen Fisher
0ebc01dc03 From Sebastien Tandel:
Create two new files (ws_strsplit.[ch]) that use GTK2 code to override
the buggy g_strsplit() function when compiling for GTK1.  Include this
work-around function (ws_strsplit) in libwireshark.def.  Add notes on usage
to README.developer.  Include epan/ws_strsplit.h in all files that use
g_strsplit().


svn path=/trunk/; revision=20804
2007-02-13 20:57:22 +00:00
Stephen Fisher
2cca9d7f55 Fix for bug #646: show the end of HTTP chunked encoding (a chunk with size 0)
as described in RFC 2616.

-This line, and those below, will be ignored--

M    packet-http.c

svn path=/trunk/; revision=19968
2006-11-24 02:59:43 +00:00
Stephen Fisher
3193603d78 Fix problem reported on -dev list by Frank Maerz with Wireshark crashing
when it encountered a proxy http connect to port 80.  This was caused by
the dissector calling itself over and over.  Now if the connect to port is
one of the defined http ports, it calls the data dissector.


svn path=/trunk/; revision=19899
2006-11-15 06:46:11 +00:00
Ronnie Sahlberg
961ff01149 teach the http header dissector how to handle integer fields instead of just assuming everything is a string field
change http.content_length to be FT_UINT32


svn path=/trunk/; revision=19654
2006-10-21 22:17:43 +00:00
Ulf Lamping
ee8abeec9e fix a typo
svn path=/trunk/; revision=19386
2006-09-30 18:30:43 +00:00
Ronnie Sahlberg
b61e42bc3a from bryant eastham
Also, there is still an outstanding issue regarding the default use of
the "media" dissector. The way it is currently coded there is no way to
have a heuristic decoder when a content-type header is specified.


In this way if there is a decoder for a specific content-type then it
will be used, then the heuristic decoders have a chance, and finally the
default of either the media-type decoder of the http_payload decoder.



svn path=/trunk/; revision=19208
2006-09-12 11:39:51 +00:00
Ronnie Sahlberg
52c827f1d1 fix for bug 1079
verify that stat_info->request_uri is non null before doing string manipulations on it
so that we dont try to dereference a null pointer further down the code


svn path=/trunk/; revision=19153
2006-09-05 14:32:15 +00:00
Gerald Combs
07f798ed37 Make sure a string pointer exists before we try to use it. Fixes bug 1050.
svn path=/trunk/; revision=19022
2006-08-24 22:05:26 +00:00
Jörg Mayer
b21579abef Stephen Fisher <stephentfisher@yahoo.com>
Could you apply the attached patch also to finish it off - I
failed to include it in the original e-mail.

svn path=/trunk/; revision=18906
2006-08-15 06:40:26 +00:00
Jörg Mayer
d291a92109 Stephen Fisher <stephentfisher@yahoo.com>
Attached is a patch to packet-http.c that calls a subdissector for
traffic flowing through a proxy via the HTTP CONNECT method.  Most
protocols, especially SSL, can be tunneled through an HTTP proxy.
Wireshark currently says this traffic is "Continuation or non-HTTP
traffic" but this patch turns the payload over to the dissector for the
protocol being tunneled.  This is similar to how the Socks dissector
works.


svn path=/trunk/; revision=18901
2006-08-14 21:46:05 +00:00
Ronnie Sahlberg
5dd51dc735 fix a tiny memory leak where we would lose a few kbyte once when wireshark is starting up
svn path=/trunk/; revision=18579
2006-06-27 12:05:05 +00:00
Ronnie Sahlberg
b945d54c9f remove some dead code coverity 17
svn path=/trunk/; revision=18567
2006-06-24 00:01:33 +00:00
Ronnie Sahlberg
617227fe2a change a comment to #if to make it clearer the code is disabled
svn path=/trunk/; revision=18566
2006-06-23 23:51:55 +00:00
Gerald Combs
8958bab6de Tethereal/tethereal -> TShark/tshark.
svn path=/trunk/; revision=18268
2006-05-31 17:38:42 +00:00
Anders Broman
996d4db495 Ethereal->Wireshark
svn path=/trunk/; revision=18234
2006-05-28 19:49:07 +00:00
Anders Broman
1814821adc From Martin Mathieson:
- Many DCT2000 protocols can be embedded within an IP primitive 
message.  Add a heuristic to see if we can find the protocol payload 
within in IP primitive message, and look for an ethereal dissector 
matching the DCT2000 protocol name (this is useful for simple protocol 
testing where no physical links are involved)
- Make some more of these protocols (diameter, http, mgcp) findable by name
- Adds protocol 'variant' number to stub and dissector
- Break the duplicated writing of the stub header out into a separate 
function

svn path=/trunk/; revision=18212
2006-05-23 05:48:00 +00:00
Ronnie Sahlberg
feab79e328 change a whole bunch of ethereal into wireshark
svn path=/trunk/; revision=18196
2006-05-21 04:49:01 +00:00
Jaap Keuter
d53b9d7205 Update status codes from RFC 2616 and RFC 2518
svn path=/trunk/; revision=17769
2006-03-30 10:16:35 +00:00
Anders Broman
25c4c078ad From Sake Blok:
Add a filter for X-Forwarded-For.

svn path=/trunk/; revision=17356
2006-02-20 06:25:02 +00:00
Jörg Mayer
5a482871f3 Jerry Talkington:
Here's a tiny patch that will allow for dissecting of chunked coded HTTP
responses when there is an extension or trailing whitespace in the
Transfer-Encoding: header.


svn path=/trunk/; revision=17314
2006-02-15 23:30:41 +00:00
Ulf Lamping
9a42ef9536 fix #480: Change defaults for all reassembling settings to ON
I've changed all settings I could find to TRUE. It might be reasonable to change some protocol settings back to FALSE, if reassembling fails very often.

svn path=/trunk/; revision=16048
2005-09-28 22:15:38 +00:00
Guy Harris
fcc31e309f Don't pass an arbitrary string from a packet to a routine expecting a
format string - the arbitrary string might contain "%" characters, so
the routine might then fetch arbitrary junk and try to use it as, for
example, a string pointer.

svn path=/trunk/; revision=15775
2005-09-13 02:39:37 +00:00
Ulf Lamping
642467ad5c I'm adding the "Expert Info" prototype now, as it seems to be in a state where others might have a look and probably already find it useful :-). Anyway, we can easily disable it at one or two places in the code if it get's in our way of a new release.
Please see: http://wiki.ethereal.com/Development/ExpertInfo for a complete overview of the intended feature and it's current state of implementation.

While I'm working on this, I've also added some more status result codes to the DCE/RPC and DCOM dissectors.

svn path=/trunk/; revision=15754
2005-09-11 16:55:34 +00:00
Ronnie Sahlberg
ec3ab9ec3e rename ep_tvb_get_string() to tvb_get_ephemeral_string() asnd update the documentation in README.developer
svn path=/trunk/; revision=15270
2005-08-10 13:41:13 +00:00
Jörg Mayer
eab0aeb4bb More char -> const char fixes
Declare some functions static

svn path=/trunk/; revision=15158
2005-07-30 16:34:38 +00:00
Guy Harris
9055696e2b Suggest that perhaps displaying chunks in the chunked encoding with the
data dissector might be overkill, as it causes each of those chunks to
be dumped in hex in Tethereal output - along with whatever's done with
the data reassembled from those chunks.

svn path=/trunk/; revision=15141
2005-07-29 07:35:43 +00:00
Ulf Lamping
4d6daa907c packet-http.c(484) : warning C4101: 'i' : unreferenced local variable
packet-http.c(486) : warning C4101: 'si' : unreferenced local variable
packet-kink.c(628) : warning C4101: 'quick_mode_payloads_length' : unreferenced local variable

svn path=/trunk/; revision=15051
2005-07-25 01:22:03 +00:00
Luis Ontanon
910f98eb86 Replace two calls to tvb_get_string with the new ep_tvb_get_string (this fixes a leak I introdduced at the last checkin)
remove the stat_infos PtrArray as we do not need to free our tap data anymore, YEAH!


svn path=/trunk/; revision=15026
2005-07-24 02:43:20 +00:00
Luis Ontanon
4f5c0a8cb2 move the stats_tree tap into the http dissector (not anymore in the plugin)
change several calls to g_memdup into ep_strndup, fix the free calls


svn path=/trunk/; revision=15022
2005-07-24 01:42:41 +00:00
Ulf Lamping
a699e351d1 add length information to "Content-encoded entity body"
svn path=/trunk/; revision=14529
2005-06-02 20:03:15 +00:00
Anders Broman
dc82444047 Add TCP port for "radan-http 8088/tcp Radan HTTP" from IANA.
svn path=/trunk/; revision=14378
2005-05-16 18:24:27 +00:00
Luis Ontanon
4012e774fd Make sure the tap info is created even when tree==NULL
svn path=/trunk/; revision=13815
2005-03-20 00:07:07 +00:00
Guy Harris
4047793286 Use the tokenizing routines to parse HTTP request and status lines.
Rename the RequestDissector type to ReqRespDissector as it's used to
dissect status (response) lines as well as request lines.

svn path=/trunk/; revision=13738
2005-03-13 00:49:33 +00:00
Luis Ontanon
c57a54f3ec Add a preference for another alternate tcp port
svn path=/trunk/; revision=13638
2005-03-06 21:32:13 +00:00
Luis Ontanon
ecea5fac96 In packets with more than one req/resp the items of all the req/resp subtrees always pointed to the offset of the first req/resp.
svn path=/trunk/; revision=13564
2005-03-01 11:37:26 +00:00
Luis Ontanon
88ffe08066 even if unharmful, this was simply ugly.
change

do {
 if (i == 0) break;
 ...
} while (i);

for a propper

while(i) {
 ...
}


svn path=/trunk/; revision=13557
2005-02-28 22:39:03 +00:00
Luis Ontanon
d018dcf663 few changes to http
- stat_infos are mantained in a GPtrArray to avoid leaking and overwriting them
- added http_host and request_uri to http_info_value_t 


svn path=/trunk/; revision=13555
2005-02-28 22:27:24 +00:00
Gerald Combs
105e5bd617 Add request URI and Version fields. Add a question about fixing a memory leak.
svn path=/trunk/; revision=13475
2005-02-23 05:47:17 +00:00
Guy Harris
c04a9a4180 There's no guaranteee that "req_resp_hdrs_do_reassembly()" gets called
only at the beginning of a tvbuff, so it needs an argument that's the
starting offset in the tvbuff.

svn path=/trunk/; revision=13128
2005-01-20 04:37:03 +00:00
Guy Harris
31871276d6 HTTP requests have no content if there's no Content-Length header and no
Transfer-Encoding header.

svn path=/trunk/; revision=13014
2005-01-13 07:47:26 +00:00
Ulf Lamping
78ff68d4b5 a lot of warnings removed, most of them about pointer to int casts without using the appropriate GLib macros
svn path=/trunk/; revision=12832
2004-12-25 13:49:30 +00:00
Guy Harris
14c5bed304 From Yaniv Kaul: add the CCM_POST method.
Tweak indentation.

svn path=/trunk/; revision=12761
2004-12-15 17:50:11 +00:00
Guy Harris
c2b55b8d97 From Yaniv Kaul: DCERPC-over-HTTP(!) support. (But why didn't whoever
came up with that not go whole hog and implement RFC 3093?)

svn path=/trunk/; revision=12756
2004-12-15 09:10:07 +00:00
Guy Harris
61db2c8cc2 From Brett Kuskie: add more HTTP headers as filterable fields.
svn path=/trunk/; revision=12679
2004-12-07 17:59:58 +00:00
Gerald Combs
ba475d8c35 Grab the last (and null) byte of the content type value.
svn path=/trunk/; revision=12668
2004-12-05 18:40:35 +00:00
Gerald Combs
df3a7623c9 Don't access memory that may have been freed.
svn path=/trunk/; revision=12640
2004-12-01 19:34:51 +00:00
Guy Harris
dc5d1958a1 From Giles Scott: make the chunk size and data length unsigned so we
handle values > 2^31-1.

svn path=/trunk/; revision=12482
2004-11-03 20:01:53 +00:00
Guy Harris
62612c70aa From Yaniv Kaul: dissect authentication data as NTLMSSP only if it
starts with "NTLMSSP", otherwise dissect it as GSS-API.

svn path=/trunk/; revision=12430
2004-10-29 08:01:11 +00:00