res_rtp_asterisk: Send correct sender SSRC when p2p bridge in use

bridge_p2p_rtp_write will forward rtp to the bridged rtp instance
without modifying the ssrc.  However, it is not updating the SSRC
in the bridged rtp.  Thus, when SSRC packets are generated, they
have the correct SSRC for the sender.

ASTERISK-28773 #close

Change-Id: I39f923bde28ebb4f0fddc926b92494aed294a478
This commit is contained in:
Torrey Searle 2020-03-06 17:13:34 +01:00 committed by George Joseph
parent 90e5dc2959
commit f2ba1919e6
1 changed files with 5 additions and 0 deletions

View File

@ -6604,6 +6604,11 @@ static int bridge_p2p_rtp_write(struct ast_rtp_instance *instance,
reconstruct |= (mark << 23);
rtpheader[0] = htonl(reconstruct);
if (mark) {
/* make this rtp instance aware of the new ssrc it is sending */
bridged->ssrc = ntohl(rtpheader[2]);
}
/* Send the packet back out */
res = rtp_sendto(instance1, (void *)rtpheader, len, 0, &remote_address, &ice);
if (res < 0) {