aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-mp2t.c
AgeCommit message (Collapse)AuthorFilesLines
2017-07-15MP2T: Add video/mp2t media-typeUli Heilmeier1-0/+1
Add video/mp2t media-type to dissect MP2T inside HTTP Bug: 13888 Change-Id: I8af9727bd69ab28a21811a807a1f631bde952926 Reviewed-on: https://code.wireshark.org/review/22623 Reviewed-by: Peter Wu <peter@lekensteyn.nl> Petri-Dish: Peter Wu <peter@lekensteyn.nl> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2017-01-29Register reassembly tablesMichael Mann1-13/+2
Register all reassembly tables with a central unit, allowing the central unit to have the callback that initializes and destroys the reassembly tables, rather than have dissectors do it individually. Change-Id: Ic92619c06fb5ba6f1c3012f613cae14982e101d4 Reviewed-on: https://code.wireshark.org/review/19834 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-10-13Convert most UDP dissectors to use "auto" preferences.Michael Mann1-1/+1
Similar to the "tcp.port" changes in I99604f95d426ad345f4b494598d94178b886eb67, convert dissectors that use "udp.port". More cleanup done on dissectors that use both TCP and UDP dissector tables, so that less preference callbacks exist. Change-Id: If07be9b9e850c244336a7069599cd554ce312dd3 Reviewed-on: https://code.wireshark.org/review/18120 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-10-08Combine Decode As and port preferences for tcp.port dissector table.Michael Mann1-1/+1
This patch introduces new APIs to allow dissectors to have a preference for a (TCP) port, but the underlying data is actually part of Decode As functionality. For now the APIs are intentionally separate from the regular APIs that register a dissector within a dissector table. It may be possible to eventually combine the two so that all dissectors that register with a dissector table have an opportunity to "automatically" have a preference to adjust the "table value" through the preferences dialog. The tcp.port dissector table was used as the guinea pig. This will eventually be expanded to other dissector tables as well (most notably UDP ports). Some dissectors that "shared" a TCP/UDP port preference were also converted. It also removed the need for some preference callback functions (mostly when the callback function was the proto_reg_handoff function) so there is cleanup around that. Dissectors that has a port preference whose default was 0 were switched to using the dissector_add_for_decode_as_with_preference API rather than dissector_add_uint_with_preference Also added comments for TCP ports used that aren't IANA registered. Change-Id: I99604f95d426ad345f4b494598d94178b886eb67 Reviewed-on: https://code.wireshark.org/review/17724 Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-07-10mp2t: use tvb_new_subset_remaining() instead of tvb_new_proxy()Martin Kaiser1-3/+1
the latter is internal to the tvb code and not meant to be called from a dissector Change-Id: Iee5af3d59329aeef8156f0bbbd5c765cac4e314d Reviewed-on: https://code.wireshark.org/review/16364 Petri-Dish: Martin Kaiser <wireshark@kaiser.cx> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-06-22Add address_to_bytes API.Michael Mann1-1/+1
This will copy an address's "byte format" into a buffer. The original intended design is for export_pdu functionality, which tries to do this "manually" for many address types (and creates undesired dependencies) The default functionality if a "byte format function" isn't provided (currently the case for all address types) is a memcpy of the address data. Providing "address to byte" functions to aid export PDU functionality will be provided later. Change-Id: I3703f9e617a8cef09165ad53a0f98c6372676b9b Reviewed-on: https://code.wireshark.org/review/16070 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-04-27mp2t: support forced tcp decodingDominic Chen1-0/+1
Change-Id: I82a2908f513bff2f6452abffeb818e1f943fc67c Reviewed-on: https://code.wireshark.org/review/15124 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-03-20Create call_data_dissector() to call data dissector.Michael Mann1-3/+1
This saves many dissectors the need to find the data dissector and store a handle to it. There were also some that were finding it, but not using it. For others this was the only reason for their handoff function, so it could be eliminated. Change-Id: I5d3f951ee1daa3d30c060d21bd12bbc881a8027b Reviewed-on: https://code.wireshark.org/review/14530 Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-03-17Associate dissector tables and heuristic subdissector lists with a protocol.Michael Mann1-1/+1
This will make it easier to determine protocol dependencies. Some LLC OUI dissector tables didn't have an associated protocol, so they were left without one (-1 used) Change-Id: I6339f16476510ef3f393d6fb5d8946419bfb4b7d Reviewed-on: https://code.wireshark.org/review/14446 Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-01-25Move the proto data stuff out of frame_data.[ch].Guy Harris1-0/+1
It's not tied to the frame_data structure any more, so it belongs by itself. Clean up some #includes while we're at it; in particular, frame_data.h doesn't use anything related to tvbuffs, so don't have it gratuitiously include tvbuff.h. Change-Id: Ic32922d4a3840bac47007c5d4c546b8842245e0c Reviewed-on: https://code.wireshark.org/review/13518 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-24Add the packet number to the packet_info structure, and use it.Guy Harris1-3/+3
That removes most of the uses of the frame number field in the frame_data structure. Change-Id: Ie22e4533e87f8360d7c0a61ca6ffb796cc233f22 Reviewed-on: https://code.wireshark.org/review/13509 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-08Fix a lot of typos and misspellingsmoshekaplan1-5/+5
Change-Id: I8512cfa1d424f82a873a0e0e1d22c7b075fdd7f3 Reviewed-on: https://code.wireshark.org/review/13069 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-23[mp2t] add an expert info for invalid adaptation_field_control valuesMartin Kaiser1-8/+16
use it for docsis and for null packets do some other minor cleanup while at it Change-Id: I605f0a9291aa7715d1fe68449c39a2e18e03fa18 Reviewed-on: https://code.wireshark.org/review/12853 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2015-12-23[mp2t] adaptation_field_control for NULL packets should not be 0Martin Kaiser1-1/+0
just remove the wrong statement, I'll add some expert info later... Bug: 11921 Change-Id: I1a4f2e32e9c7c32c54b251445f8750d7c3f5ab6f Reviewed-on: https://code.wireshark.org/review/12850 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2015-12-09new_register_dissector -> register_dissector for dissector directory.Michael Mann1-1/+1
Change-Id: Ie39ef054a4a942687bd079f3a4d8c2cc55d5f22c Reviewed-on: https://code.wireshark.org/review/12485 Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-11-14register_dissector -> new_register_dissectorMichael Mann1-5/+5
Picking off "easy" dissectors that only have one or two exit points at most. Change-Id: I25fe6a0aac93980333217d007702799d16946563 Reviewed-on: https://code.wireshark.org/review/11816 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-10-26Clean up more unnecessary use of the 'volatile' key word.Jeff Morriss1-2/+2
Change-Id: I3e72fddc6ed380780d7e2e1c8df87e580138188d Reviewed-on: https://code.wireshark.org/review/11271 Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-10-22Use address functions instead of ADDRESS macros in asn1 and epanGerald Combs1-6/+6
Replace CMP_ADDRESS, COPY_ADDRESS, et al with their lower-case equivalents in the asn1 and epan directories. Change-Id: I4043b0931d4353d60cffbd829e30269eb8d08cf4 Reviewed-on: https://code.wireshark.org/review/11200 Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-09-10Tell the user (via COL_INFO) when a frame is a fragment (reassembled later).Jeff Morriss1-0/+6
See: https://www.wireshark.org/lists/wireshark-users/201508/msg00023.html (Also set a fence on COL_INFO so we can see each packet's contribution to the column.) Change-Id: I9a4b1f60c5ad7065c2f025bbcca1dd2d09fec9de Reviewed-on: https://code.wireshark.org/review/10471 Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2015-07-17Remove all preferences related to enabling/disabling heuristic dissectors.Michael Mann1-2/+2
The preferences are still supported for backwards compatibility, but the heuristic_protos file has final say on the "preference" to enable/disable a heuristic dissector. Also add parameter to heur_dissector_add() for the "default" enable/disable of a heuristic dissector. With this parameter, a few more (presumably weak) heuristic dissectors have been "registered" but of course default to being disabled. Change-Id: I51bebb2146ef3fbb8418d4f5c7f2cb2b58003a22 Reviewed-on: https://code.wireshark.org/review/9610 Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Roland Knall <rknall@gmail.com> Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-07-12Add "user presentable" and "unique string ids" to heuristic table entries.Michael Mann1-2/+2
This allows better presentation of heuristic dissectors to the end user. Change-Id: I2ff3985ab914e83c2989880cc0c7b9904045b3f6 Reviewed-on: https://code.wireshark.org/review/9602 Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-07-03Call reassembly_table_destroy for some dissectorsPeter Wu1-0/+6
This patch adds reassembly_table_destroy calls as cleanup function for dissectors which have a simple init routine that just calls reassembly_table_init (comments are ignored). The changes were automatically generated using https://git.lekensteyn.nl/peter/wireshark-notes/diff/one-off/cleanup-rewrite.py?id=4cc0aec05dc67a51926a045e1955b7a956757b5e (with the if and assignment parsers disabled). The only difference from the autogenerated output is that the XXX comments from the init routines in smb-pipe and tds dissectors are kept. Change-Id: I64aedf7189877247282b30b0e0f83757be6199e7 Reviewed-on: https://code.wireshark.org/review/9222 Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-06-25Add proper "Decode As" mechanism for L2TPv3 subdissectors instead of preference.Michael Mann1-0/+2
Change-Id: I87f6f9f40e1c33148de43b53a8881d51416f5d2c Reviewed-on: https://code.wireshark.org/review/7898 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-03-12MP2T: restore addresses once fragments are added to the hash tablePascal Quantin1-0/+6
It allows to have "Follow UDP stream" context menu working again Bug: 11055 Change-Id: I8eae15bfddb45ea033eb8dd2e3f7ca038057421a Reviewed-on: https://code.wireshark.org/review/7662 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-02-19Add name resolution support to address type.Michael Mann1-1/+1
Add address_with_resolution_to_str API that returns address string + name resolution in the format %s (%s), first string is resolved name (if available) and second string is raw address string. Convert AT_FCWWN to using proper name resolution format First use of address_with_resolution_to_str with field types in proto.c Change-Id: I2ae77c29a4ffc30bb919fbec00f06629830898c2 Reviewed-on: https://code.wireshark.org/review/7196 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-02-09Add fixed length function for address types.Michael Mann1-1/+1
This allows for even more cleanup with respect to how address types are handled, including removing address_to_str.c. Most of the functionality was folded into address_types.c, but the remainder was just dispersed because it didn't make sense to keep the file. Change-Id: Id4e9391f0c3c26eff8c27b362e4f7a1970d718b4 Reviewed-on: https://code.wireshark.org/review/7038 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-02-09Eliminate the hf member out of the address structure.Michael Mann1-2/+6
Using the new address type registration, dissectors can create their own address types with their own (column) filters attached to them, eliminating the need for an address to keep track of a hf_ field. Change-Id: I2bbec256a056f403a7ac9880d5d76a0b2a21b221 Ping-Bug: 7728 Reviewed-on: https://code.wireshark.org/review/7037 Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-12-21Cleanup use of #includes in non-generated epan/dissector/*.cBill Meier1-3/+0
Specifically: - Set packet.h to be the first wireshark #include after config.h and "system" #includes. packet.h added as an #include in some cases when missing. - Remove some #includes included (directly/indirectly) in packet.h. E.g., glib.h. (Done only for those files including packet.h). - As needed, move "system" #includes to be after config.h and before wireshark #includes. - Rework various #include file specifications for consistency. - Misc. Change-Id: Ifaa1a14b50b69fbad38ea4838a49dfe595c54c95 Reviewed-on: https://code.wireshark.org/review/5923 Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-12-21Have a heur_dissector_list_t be an opaque handle.Guy Harris1-1/+1
This allows dissector lists to be looked up by name, so they can be shared by multiple dissectors. (This means that there's no "udplite" heuristic dissector list, but there shouldn't be one - protocols can run atop UDP or UDPLite equally well, and they share a port namespace and uint dissector table, so they should share a heuristic dissector table as well.) Change-Id: Ifb2d2c294938c06d348a159adea7a57db8d770a7 Reviewed-on: https://code.wireshark.org/review/5936 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-11eth,mp2t: Rename ei[] filter names duplicating hf[] filter names.Bill Meier1-1/+1
Change-Id: I1a9e8344866ce5a5bbd48b07c49baa398ce161f7 Reviewed-on: https://code.wireshark.org/review/5724 Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-09-10Replace deprecated tvb_length callsEvan Huus1-2/+2
And a few other misc. cleanups while in the neighbourhood. Change-Id: Ic0d6836dec9c36d31ea244a6adc74d4713565090 Reviewed-on: https://code.wireshark.org/review/4047 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-09-09Revert "Explicitly lengthen some constants to 64 bits"Evan Huus1-2/+2
Guy already fixed the issue, I was looking at a stale buildbot page. This reverts commit f9bfa976e67da2f8065f172de9ed06fad61762a8. Change-Id: I04e2f1ddfae9558b6cec40740ffbb66a16c3fecb Reviewed-on: https://code.wireshark.org/review/4046 Reviewed-by: Evan Huus <eapache@gmail.com>
2014-09-08Explicitly lengthen some constants to 64 bitsEvan Huus1-2/+2
Hopefully squashes the mac buildbot error packet-mp2t.c:993: warning: implicit conversion shortens 64-bit value into a 32-bit value Change-Id: I9ca6420925442b56cfdf5db629b63d6ead7bdfbd Reviewed-on: https://code.wireshark.org/review/4045 Reviewed-by: Evan Huus <eapache@gmail.com>
2014-09-08Do the PCR and the original PCR the same way.Guy Harris1-7/+6
In both cases, make the extension a 16-bit variable, cast the result of extracting the extension to guint16 to clarify that only the 9 bits visible through the mask matter. While we're at it, there's no need to use "proto_tree_add_uint64_format_value() if the format is just the standard format for a 64-bit unsigned integer. Change-Id: I8f1f48595830d4672984f3797be1c9d994e64ea0 Reviewed-on: https://code.wireshark.org/review/4043 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-08don't skip another 6 bytes after OPCRMartin Kaiser1-31/+9
Bug: 10446 simplify OPCR calculation while we're at it Change-Id: I8590e409895e712fe6bbb64ab23093caf5795fa7 Reviewed-on: https://code.wireshark.org/review/4040 Petri-Dish: Martin Kaiser <wireshark@kaiser.cx> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2014-08-14Eliminate proto_tree_add_text from some dissectors.Michael Mann1-2/+8
Other minor cleanup while in the neighborhood. Change-Id: If73a029f564219782c313d4154c24c7ce7458b52 Reviewed-on: https://code.wireshark.org/review/3574 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-19remove some more unnecessary initializationsMartin Kaiser1-7/+7
Change-Id: I74b082b7644f36efc3dc220ff92f1bfff524c408 Reviewed-on: https://code.wireshark.org/review/3119 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2014-07-19no need to initialize these pointersMartin Kaiser1-6/+6
Change-Id: I0791ca2fc9a7a87dafbdf15f51d9f1a9d12aa89e Reviewed-on: https://code.wireshark.org/review/3118 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2014-07-19use gboolean for detected_dropMartin Kaiser1-3/+3
Change-Id: Ice0c68541604c5566cc807c17faf534cd6628262 Reviewed-on: https://code.wireshark.org/review/3117 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2014-07-04convert to proto_tree_add_subtree[_format]Michael Mann1-5/+2
Change-Id: I621f2e2cad9403449cb78f45302388f0c874d3bc Reviewed-on: https://code.wireshark.org/review/2852 Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-06-20Rename dissector_add_handle() to dissector_add_for_decode_as().Guy Harris1-1/+1
Hopefully that name makes it clear what the routiner's purpose is, and will encourage people to use it rather than using dissector_add_uint() with a bogus integer value. Change-Id: Ic5be456d0ad40b176aab01712ab7b13aed5de2a8 Reviewed-on: https://code.wireshark.org/review/2483 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-19handle TS packet reassembly for PES packets with 0 length fieldMartin Kaiser1-2/+15
(unknown length) this fixes bug 9527 Change-Id: I255ae9662dfeea06e61e4b0891e0ea8eaa254d0f Reviewed-on: https://code.wireshark.org/review/2462 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx> Tested-by: Martin Kaiser <wireshark@kaiser.cx>
2014-06-19no need to initialize these two varsMartin Kaiser1-2/+2
Change-Id: Ie1a71046b791bcbbf3cf02ddd1c4ddc88b388302 Reviewed-on: https://code.wireshark.org/review/2461 Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2014-06-19Revert "Fixup: tvb_* -> tvb_captured"Michael Mann1-2/+2
https://www.wireshark.org/lists/wireshark-dev/201406/msg00131.html This reverts commit 246fe2ca4c67d8c98caa84e2f57694f6322e2f96. Change-Id: Ib24bae0198c13a84bd7f731bf4af921212109a8f Reviewed-on: https://code.wireshark.org/review/2430 Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-06-18Fixup: tvb_* -> tvb_capturedDario Lombardo1-2/+2
Change-Id: I9209c1271967405c34c1b6fa43e1726a4d3a5a3f Reviewed-on: https://code.wireshark.org/review/2377 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-07tvb_new_subset -> tvb_new_subset_length when length parameters are equal.Michael Mann1-1/+1
tvb_new_subset -> tvb_new_subset_remaining it appears that's what the intention is. Change-Id: I2334bbf3f10475b3c22391392fc8b6864454de2d Reviewed-on: https://code.wireshark.org/review/1999 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-06-05simplify PCR calculationMartin Kaiser1-28/+8
Change-Id: I892088e158519e331cba89be3c8d7c71f38a8925 Reviewed-on: https://code.wireshark.org/review/1964 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-03make the PCR value filterableMartin Kaiser1-4/+3
this fixes bug #10158 Change-Id: Ic67b074c464c52ac523e835b9815a5c3a3fa14d9 Reviewed-on: https://code.wireshark.org/review/1925 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-23Zero out pinfo->src and dst before adding a frag.Guy Martin1-0/+6
If an mp2t packet contains one full subpacket and the fragment of another one, it happens that the first subpacket will set src or dst to an ethernet or IP address. Adding the fragment of the second subpacket will then use this information for calculating the hash in the fragment table. However, later fragments in other mp2t packets will not have these info and reassembly will fail. Change-Id: Ic52763017cb854851b6686654c2d8a1624305d65 Reviewed-on: https://code.wireshark.org/review/1692 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-19Fix warning about the adaptation field control for docsis packet. The specs ↵Guy Martin1-2/+2
actually say that it should be set to 1. Change-Id: I136b48c6284c09798ee8e88f012a20e2cb16cd5e Reviewed-on: https://code.wireshark.org/review/1693 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>