aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-lisp.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2012-08-22 21:01:46 +0000
committerGuy Harris <guy@alum.mit.edu>2012-08-22 21:01:46 +0000
commitc2a8aa2bee81365b7d69470f59132b8e1dcf24c3 (patch)
treef7bcc4bf1615d00748abe7bbc2795ee740f83183 /epan/dissectors/packet-lisp.c
parent4c32e01dfe491bbfc20a50d70589377c3a6c0378 (diff)
Put the state of flags in the hop_flags field into the summary line.
Note in the introductory comment what "LISP" refers to, for the benefit of those of us who grew up thinking it stood for "LISt Processing". svn path=/trunk/; revision=44617
Diffstat (limited to 'epan/dissectors/packet-lisp.c')
-rw-r--r--epan/dissectors/packet-lisp.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/epan/dissectors/packet-lisp.c b/epan/dissectors/packet-lisp.c
index b5dbc74f3e..2a1ec05b25 100644
--- a/epan/dissectors/packet-lisp.c
+++ b/epan/dissectors/packet-lisp.c
@@ -1,5 +1,5 @@
/* packet-lisp.c
- * Routines for LISP Control Message dissection
+ * Routines for Locator/ID Separation Protocol (LISP) Control Message dissection
* Copyright 2011, Lorand Jakab <lj@lispmon.net>
*
* $Id$
@@ -319,11 +319,12 @@ dissect_lcaf_elp_hop(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
{
guint16 addr_len = 0;
guint16 hop_afi;
+ guint16 hop_flags;
const gchar *hop_str;
+ proto_item *ti;
hop_afi = tvb_get_ntohs(tvb, offset); offset += 2;
- /* hop flags */
- offset += 2;
+ hop_flags = tvb_get_ntohs(tvb, offset); offset += 2;
hop_str = get_addr_str(tvb, offset, hop_afi, &addr_len);
if (hop_str == NULL) {
@@ -333,10 +334,16 @@ dissect_lcaf_elp_hop(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
}
if (idx) {
- proto_tree_add_text(tree, tvb, offset - 4, addr_len + 4, "Reencap hop %d: %s", idx, hop_str);
+ ti = proto_tree_add_text(tree, tvb, offset - 4, addr_len + 4, "Reencap hop %d: %s", idx, hop_str);
} else {
- proto_tree_add_text(tree, tvb, offset - 4, addr_len + 4, "Reencap hop: %s", hop_str);
+ ti = proto_tree_add_text(tree, tvb, offset - 4, addr_len + 4, "Reencap hop: %s", hop_str);
}
+ if (hop_flags & 0x04)
+ proto_item_append_text(ti, ", Lookup");
+ if (hop_flags & 0x02)
+ proto_item_append_text(ti, ", RLOC-Probe");
+ if (hop_flags & 0x01)
+ proto_item_append_text(ti, ", Strict");
return addr_len + 4;
}