Commit Graph

20 Commits

Author SHA1 Message Date
Evan Huus 82112c8ea3 The payload of a compressed Kafka message is supposed to be itself a
message-set, so dissect it as such. I don't have a capture demonstrating this
at the moment, but it ought to work.

svn path=/trunk/; revision=54303
2013-12-20 15:14:52 +00:00
Evan Huus 1feb5f00c1 Simplify dissect_kafka_metadata_request() to not add an unnecessary tree and
match the rest of the protocol dissection in style.

svn path=/trunk/; revision=54301
2013-12-20 15:03:08 +00:00
Jeff Morriss c3de9c6311 As pointed out in http://ask.wireshark.org/questions/28304/questions-on-packet-kafkac :
ett_kafka_metadata_topics is defined (and registered) but not used.  Use it.

svn path=/trunk/; revision=54294
2013-12-20 14:28:16 +00:00
Jakub Zawadzki c45475ab45 Fix [-Wmissing-prototypes]
svn path=/trunk/; revision=54135
2013-12-15 23:44:12 +00:00
Bill Meier ebaeed5a1f (Trivial)
- Fix indentation to match editor modelines (tabs-->spaces);
 - Rework/add some whitespace;

svn path=/trunk/; revision=53978
2013-12-12 20:16:30 +00:00
Michael Mann 9b7fb8a811 Create the ability to have packet scoped "proto" data. Bug 9470 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9470)
I'm not sold on the name or module the proto_data functions live in, but I believe the function arguments are solid and gives us the most flexibility for the future.  And search/replace of a function name is easy enough to do.

The big driving force for getting this in sooner rather than later is the saved memory on ethernet packets (and IP packets soon), that used to have file_scope() proto data when all it needed was packet_scope() data (technically packet_info->pool scoped), strictly for Decode As.

All dissectors that use p_add_proto_data() only for Decode As functionality have been converted to using packet_scope().  All other dissectors were converted to using file_scope() which was the original scope for "proto" data.

svn path=/trunk/; revision=53520
2013-11-23 02:20:13 +00:00
Evan Huus b13c1b7093 The kafka compression codec is only 2 bits, not 3.
svn path=/trunk/; revision=53309
2013-11-13 23:47:57 +00:00
Michael Mann 8081cf1d90 Add data parameter to tcp_dissect_pdus() as well as convert it to using "new" style dissectors.
Now that "bytes consumed" can be determined, should tcp_dissect_pdus() take advantage of that?

Should tcp_dissect_pdus return length (bytes consumed)?  There are many dissectors that just call tcp_dissect_pdus() then return tvb_length(tvb).  Seems like that could all be rolled into one.

svn path=/trunk/; revision=53198
2013-11-09 17:46:28 +00:00
Evan Huus 233c409184 Dissect Kafka "fetch" requests and responses.
svn path=/trunk/; revision=52909
2013-10-27 23:08:01 +00:00
Jeff Morriss 4cfc0f27cb Kafka's CRC is 4 bytes long and is added with ENC_BIG_ENDIAN. Make the hf
FT_UINT32 instead of FT_BYTES to match.

svn path=/trunk/; revision=52845
2013-10-25 14:41:12 +00:00
Jeff Morriss 3440dd73f2 Fix CID 1080758: be prepared for tvb_child_uncompress() failing (and returning
NULL).

svn path=/trunk/; revision=52844
2013-10-25 14:38:39 +00:00
Evan Huus feb39701c5 Decompress gzipped Kafka messages.
svn path=/trunk/; revision=51726
2013-09-03 16:43:08 +00:00
Alexis La Goutte ca31e9d76a Fix some Dead Store (Dead assignement/Dead increment) Warning found by Clang
svn path=/trunk/; revision=51660
2013-09-02 23:11:50 +00:00
Evan Huus acfbd6d680 Dissect all the fields in kafka produce request/response pairs. All of the
helpers should be in place for the other message types now.

svn path=/trunk/; revision=51648
2013-09-02 17:46:47 +00:00
Evan Huus c4befc8a7a Decode Kafka metadata requests and responses.
svn path=/trunk/; revision=51239
2013-08-09 15:37:07 +00:00
Evan Huus 1a28f66086 Dissect more of the Kafka protocol.
svn path=/trunk/; revision=51030
2013-07-30 17:13:57 +00:00
Evan Huus 7b1aa04181 Fix a bug in the Kafka dissector handling PRODUCE requests with a RequiredAcks
field of 0 - we don't expect a response to them.

svn path=/trunk/; revision=50894
2013-07-25 22:45:02 +00:00
Evan Huus 60e25a2080 Commit real kafka dissector this time.
svn path=/trunk/; revision=50779
2013-07-22 00:12:42 +00:00
Evan Huus 76abdbc1cc Remove kafka dissector, accidentally committed symlink instead of real file.
svn path=/trunk/; revision=50778
2013-07-22 00:11:57 +00:00
Evan Huus fb6c9c3387 Skeleton dissector for Apache Kafka's new protocol:
https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol

All the core request/response matching necessary to actually decode is done, and
helpers exist for the common Kafka data types. Now it just remains to fill in
the rest of the fields.

svn path=/trunk/; revision=50777
2013-07-22 00:08:25 +00:00