diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2013-11-26 22:40:52 +0000 |
---|---|---|
committer | Pascal Quantin <pascal.quantin@gmail.com> | 2013-11-26 22:40:52 +0000 |
commit | f2d28c05bc16429acde68c5ba255c423eb03c4d6 (patch) | |
tree | eebf207190e2af7e635b5ddedde682421ad29e7e /epan/dissectors/packet-rtpproxy.c | |
parent | a955db9c0d7ca3316c5213416d4aae678e7c4f2e (diff) |
From Peter Lemenkov via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9476 :
Add DTMF dissector setup based on the information found in RTPproxy requests
svn path=/trunk/; revision=53605
Diffstat (limited to 'epan/dissectors/packet-rtpproxy.c')
-rw-r--r-- | epan/dissectors/packet-rtpproxy.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/epan/dissectors/packet-rtpproxy.c b/epan/dissectors/packet-rtpproxy.c index 965599bdcf..bdf26fb4dc 100644 --- a/epan/dissectors/packet-rtpproxy.c +++ b/epan/dissectors/packet-rtpproxy.c @@ -101,8 +101,9 @@ typedef struct _rtpproxy_info { nstime_t req_time; } rtpproxy_info_t; -static dissector_handle_t rtp_handle; static dissector_handle_t rtcp_handle; +static dissector_handle_t rtp_events_handle; +static dissector_handle_t rtp_handle; typedef struct _rtpproxy_conv_info { wmem_tree_t *trans; @@ -295,6 +296,7 @@ rtpproxy_add_parameter(proto_tree *rtpproxy_tree, tvbuff_t *tvb, guint begin, gu guint offset = 0; guint new_offset = 0; gint i = 0; + guint pt = 0; gchar** codecs = NULL; guint8* rawstr = NULL; @@ -344,6 +346,10 @@ rtpproxy_add_parameter(proto_tree *rtpproxy_tree, tvbuff_t *tvb, guint begin, gu new_offset = (gint)strspn(rawstr+offset, "0123456789"); another_tree = proto_item_add_subtree(ti, ett_rtpproxy_command_parameters_dtmf); proto_tree_add_item(another_tree, hf_rtpproxy_command_parameter_dtmf, tvb, begin+offset, new_offset, ENC_ASCII | ENC_NA); + if(rtpproxy_establish_conversation){ + pt = (guint)strtoul(tvb_format_text(tvb,begin+offset,new_offset),NULL,10); + dissector_add_uint("rtp.pt", pt, rtp_events_handle); + } offset += new_offset; break; case 'm': @@ -1321,8 +1327,9 @@ proto_reg_handoff_rtpproxy(void) dissector_add_uint("udp.port", rtpproxy_udp_port, rtpproxy_udp_handle); old_rtpproxy_udp_port = rtpproxy_udp_port; - rtp_handle = find_dissector("rtp"); rtcp_handle = find_dissector("rtcp"); + rtp_events_handle = find_dissector("rtpevent"); + rtp_handle = find_dissector("rtp"); } /* |