Comment # 14
on bug 8355
from Robert Jongbloed
Comment on attachment 12354 [details]
Patch for RTP/RTCP mux
>Index: epan/dissectors/packet-rtp.c
>===================================================================
>--- epan/dissectors/packet-rtp.c (revision 54243)
>+++ epan/dissectors/packet-rtp.c (working copy)
>@@ -134,6 +134,7 @@
> };
>
> static dissector_handle_t rtp_handle;
>+static dissector_handle_t rtcp_handle;
> static dissector_handle_t classicstun_handle;
> static dissector_handle_t stun_handle;
> static dissector_handle_t classicstun_heur_handle;
>@@ -502,6 +503,9 @@
> #define RTP_PAYLOAD_TYPE(octet) ((octet) & 0x7F)
> /* http://www.iana.org/assignments/rtp-parameters */
>
>+#define FIRST_RTCP_CONFLICT_PAYLOAD_TYPE 64
>+#define LAST_RTCP_CONFLICT_PAYLOAD_TYPE 76
>+
> static const value_string rtp_payload_type_vals[] =
> {
> /* 0 */ { PT_PCMU, "ITU-T G.711 PCMU" },
>@@ -1685,6 +1689,11 @@
> marker_set = RTP_MARKER( octet2 );
> payload_type = RTP_PAYLOAD_TYPE( octet2 );
>
>+ if (marker_set && payload_type >= FIRST_RTCP_CONFLICT_PAYLOAD_TYPE && payload_type <= LAST_RTCP_CONFLICT_PAYLOAD_TYPE) {
>+ call_dissector(rtcp_handle, tvb, pinfo, tree);
>+ return tvb_length(tvb);
>+ }
>+
> /* Get the subsequent fields */
> seq_num = tvb_get_ntohs( tvb, offset + 2 );
> timestamp = tvb_get_ntohl( tvb, offset + 4 );
>@@ -3294,6 +3303,7 @@
> dissector_add_uint("rtp.hdr_ext", RTP_ED137_SIG, rtp_hdr_ext_ed137_handle);
> dissector_add_uint("rtp.hdr_ext", RTP_ED137A_SIG, rtp_hdr_ext_ed137a_handle);
>
>+ rtcp_handle = find_dissector("rtcp");
> data_handle = find_dissector("data");
> stun_handle = find_dissector("stun-udp");
> classicstun_handle = find_dissector("classicstun");
You are receiving this mail because:
- You are watching all bug changes.