diff options
author | Martin Kaiser <wireshark@kaiser.cx> | 2017-06-20 15:04:54 -0400 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2017-06-23 14:25:00 +0000 |
commit | 082e3e346f69f0c2134064e80dcc104c18111c55 (patch) | |
tree | b8d3d904728ad8cac4ad285c45fe8dd68f439db0 /epan/dissectors/packet-iso7816.c | |
parent | 635b3720b5a43ed4b3bb1f030033d25675a390b3 (diff) | |
download | wireshark-082e3e346f69f0c2134064e80dcc104c18111c55.tar.gz |
USB CCID: use Decode As to select the payload protocol
Remove the special case for vid 0x072F, pid 0x2200. We should be able to
set Decode As for this (vid, pid) to USB CCID and then use the new
Decode As mechanism to select the next protocol.
Register GSM SIM, ISO7816, PN532 and ACR122 as possible payloads
for USB CCID.
Change-Id: I8237cc9123655d3b289b0564ffb83a32434bebfc
Reviewed-on: https://code.wireshark.org/review/22290
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-iso7816.c')
-rw-r--r-- | epan/dissectors/packet-iso7816.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/epan/dissectors/packet-iso7816.c b/epan/dissectors/packet-iso7816.c index 59b7964eab..47c1dce589 100644 --- a/epan/dissectors/packet-iso7816.c +++ b/epan/dissectors/packet-iso7816.c @@ -40,6 +40,7 @@ void proto_reg_handoff_iso7816(void); static int proto_iso7816 = -1; static int proto_iso7816_atr = -1; +static dissector_handle_t iso7816_handle; static dissector_handle_t iso7816_atr_handle; static wmem_tree_t *transactions = NULL; @@ -927,7 +928,7 @@ proto_register_iso7816(void) expert_iso7816 = expert_register_protocol(proto_iso7816); expert_register_field_array(expert_iso7816, ei, array_length(ei)); - register_dissector("iso7816", dissect_iso7816, proto_iso7816); + iso7816_handle = register_dissector("iso7816", dissect_iso7816, proto_iso7816); transactions = wmem_tree_new_autoreset(wmem_epan_scope(), wmem_file_scope()); @@ -935,6 +936,13 @@ proto_register_iso7816(void) iso7816_atr_handle = register_dissector("iso7816.atr", dissect_iso7816_atr, proto_iso7816_atr); } + +void proto_reg_handoff_iso7816(void) +{ + dissector_add_for_decode_as("usbccid.subdissector", iso7816_handle); +} + + /* * Editor modelines - http://www.wireshark.org/tools/modelines.html * |