Skip to content

Commit 6b76b49

Browse files
committed
MT#55283 trigger rekernel for SSRC-less streams
If a stream has been pushed to the kernel from anything other than RTP, even though RTP is expected, we get a forwarding entries without any SSRCs. This is valid, but once actual RTP is received, it needs to be passed on to user space, so that SSRC contexts can be set up. Possible fix for #1855 Change-Id: I51b82d3cf79cf66780fdde154bebe56e0f43174b (cherry picked from commit a0b705e) (cherry picked from commit c3dd3dc) (cherry picked from commit b3f2685)
1 parent 23850d7 commit 6b76b49

File tree

3 files changed

+3
-1
lines changed

3 files changed

+3
-1
lines changed

daemon/media_socket.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1495,6 +1495,7 @@ static const char *kernelize_one(struct rtpengine_target_info *reti, GQueue *out
14951495

14961496
if (proto_is_rtp(media->protocol)) {
14971497
reti->rtp = 1;
1498+
reti->ssrc_req = 1;
14981499
if (!MEDIA_ISSET(media, TRANSCODING)) {
14991500
reti->rtcp_fw = 1;
15001501
if (media->protocol->avpf)

kernel-module/xt_RTPENGINE.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5318,7 +5318,7 @@ static unsigned int rtpengine46(struct sk_buff *skb, struct sk_buff *oskb,
53185318
// Look for matching SSRC index if any SSRC were given
53195319
ssrc_idx = target_find_ssrc(g, rtp.rtp_header->ssrc);
53205320
errstr = "SSRC mismatch";
5321-
if (ssrc_idx == -2)
5321+
if (ssrc_idx == -2 || (ssrc_idx == -1 && g->target.ssrc_req))
53225322
goto out_error;
53235323

53245324
pkt_idx = rtp_packet_index(&g->decrypt_rtp, &g->target.decrypt, rtp.rtp_header, ssrc_idx);

kernel-module/xt_RTPENGINE.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ struct rtpengine_target_info {
123123
dtls:1,
124124
stun:1,
125125
rtp:1,
126+
ssrc_req:1,
126127
rtp_only:1,
127128
track_ssrc:1,
128129
rtcp:1,

0 commit comments

Comments
 (0)