diff options
author | João Valverde <joao.valverde@tecnico.ulisboa.pt> | 2016-07-03 01:26:32 +0100 |
---|---|---|
committer | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2016-07-03 06:24:02 +0000 |
commit | 14642616664d879e7aa74c8f4ab869f877125c7a (patch) | |
tree | f88d20d40aaa175d7e3c17d97aaa50ffe822fa05 | |
parent | 32e8f077a153175c33d5b58fd8a5919635e4446d (diff) |
ICMPv6: Avoid "no response found" for multicast ping
Change-Id: Ia6bfdd28fc6d85b3899d542db5aa4ed54be054ea
Reviewed-on: https://code.wireshark.org/review/16253
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
-rw-r--r-- | epan/dissectors/packet-icmpv6.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/epan/dissectors/packet-icmpv6.c b/epan/dissectors/packet-icmpv6.c index 3601e04871..c84a02c4e7 100644 --- a/epan/dissectors/packet-icmpv6.c +++ b/epan/dissectors/packet-icmpv6.c @@ -45,6 +45,7 @@ #include <epan/tap.h> #include <epan/capture_dissectors.h> #include <epan/proto_data.h> +#include <epan/ipv6.h> #include "packet-ber.h" #include "packet-dns.h" @@ -1258,7 +1259,12 @@ static icmp_transaction_t *transaction_start(packet_info *pinfo, proto_tree *tre } if (icmpv6_trans == NULL) { - if (PINFO_FD_VISITED(pinfo)) { + if (pinfo->dst.type == AT_IPv6 && + in6_is_addr_multicast((const struct e_in6_addr *)pinfo->dst.data)) { + /* XXX We should support multicast echo requests, but we don't currently */ + /* Note the multicast destination and skip transaction tracking */ + col_append_str(pinfo->cinfo, COL_INFO, " (multicast)"); + } else if (PINFO_FD_VISITED(pinfo)) { /* No response found - add field and expert info */ it = proto_tree_add_item(tree, hf_icmpv6_no_resp, NULL, 0, 0, ENC_NA); |