aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors
diff options
context:
space:
mode:
authorAlexis La Goutte <alexis.lagoutte@gmail.com>2017-08-16 17:18:30 +0200
committerMichael Mann <mmann78@netscape.net>2017-08-18 14:06:09 +0000
commit4f76eb002d65d801d5c262f7b21594d1421de4fd (patch)
tree1253872f24842e399ce652b746cbd2bd747801c8 /epan/dissectors
parent96dd97f9ba37ae0e708d2917e78c1a61d385266b (diff)
RSVP: add Session C-type RSVP_SESSION_TYPE_P2MP_LSP_TUNNEL_IPV6
Change-Id: I493771df32b83691fa587b9a725c15df6057fb52 Ping-Bug: 13977 Reviewed-on: https://code.wireshark.org/review/23104 Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan/dissectors')
-rw-r--r--epan/dissectors/packet-rsvp.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/epan/dissectors/packet-rsvp.c b/epan/dissectors/packet-rsvp.c
index e3ea0b9769..7afbc75262 100644
--- a/epan/dissectors/packet-rsvp.c
+++ b/epan/dissectors/packet-rsvp.c
@@ -2587,6 +2587,33 @@ dissect_rsvp_session(proto_item *ti, proto_tree *rsvp_object_tree,
rsvph->ext_tunnel_id = tvb_get_ntohl(tvb, offset2 + 8);
break;
+ case RSVP_SESSION_TYPE_P2MP_LSP_TUNNEL_IPV6:
+ proto_tree_add_uint_format_value(rsvp_object_tree, hf_rsvp_ctype, tvb, offset+3, 1,
+ RSVP_SESSION_TYPE_P2MP_LSP_TUNNEL_IPV6, "14 - IPv6 P2MP LSP TUNNEL");
+ proto_tree_add_item(rsvp_object_tree,
+ hf_rsvp_session_p2mp_id,
+ tvb, offset2, 4, ENC_BIG_ENDIAN);
+
+ proto_tree_add_item(rsvp_object_tree,
+ hf_rsvp_filter[RSVPF_SESSION_TUNNEL_ID],
+ tvb, offset2+6, 2, ENC_BIG_ENDIAN);
+
+ proto_tree_add_item(rsvp_object_tree, hf_rsvp_extended_tunnel, tvb, offset2+8, 16, ENC_NA);
+ hidden_item = proto_tree_add_item(rsvp_object_tree,
+ hf_rsvp_filter[RSVPF_SESSION_EXT_TUNNEL_ID_IPV6],
+ tvb, offset2+8, 16, ENC_NA);
+ PROTO_ITEM_SET_HIDDEN(hidden_item);
+
+ /*
+ * Save this information to build the conversation request key
+ * later.
+ */
+ rsvph->session_type = RSVP_SESSION_TYPE_P2MP_LSP_TUNNEL_IPV6;
+ set_address_tvb(&rsvph->destination, AT_IPv6, 16, tvb, offset2);
+ rsvph->udp_dest_port = tvb_get_ntohs(tvb, offset2+18);
+ rsvph->ext_tunnel_id_ipv6_pre = tvb_get_ntoh64(tvb, offset2+20);
+ rsvph->ext_tunnel_id_ipv6_post = tvb_get_ntoh64(tvb, offset2+28);
+ break;
case RSVP_SESSION_TYPE_IPV4_E_NNI:
proto_tree_add_uint_format_value(rsvp_object_tree, hf_rsvp_ctype, tvb, offset+3, 1,