MT#55283 kernel in/out even in drop case

Pull the kernel in/out checks down below the "out" label, and use the
existing flags from the STUN connect event instead of directly calling
the relevant function.

Change-Id: Ide1ebf0d18446427535d9e63dadf7fdbbddc6c94
(cherry picked from commit 209e5a38dc)
mr26.1
Richard Fuchs 3 weeks ago
parent 1b3a4fb968
commit c3be942281

@ -3496,7 +3496,10 @@ static int stream_packet(struct packet_handler_ctx *phc) {
if (stun_ret == 0) // packet processed
goto out;
if (stun_ret == 1) {
media_packet_kernel_check(phc);
phc->kernelize = true;
phc->unkernelize_subscriptions = true;
phc->unkernelize = "ICE negotiation event";
phc->update = true;
goto drop;
}
@ -3753,18 +3756,16 @@ next:
ssrc_entry_release(phc->mp.ssrc_out);
}
///////////////// INGRESS POST-PROCESSING HANDLING
if (phc->unkernelize) // for RTCP packet index updates
unkernelize(phc->mp.stream, phc->unkernelize);
if (phc->kernelize)
media_packet_kernel_check(phc);
drop:
ret = 0;
handler_ret = 0;
out:
if (phc->unkernelize)
unkernelize(phc->mp.stream, phc->unkernelize);
if (phc->kernelize)
media_packet_kernel_check(phc);
if (phc->unconfirm) {
stream_unconfirm(phc->mp.stream, "peer address unconfirmed");
unconfirm_sinks(&phc->mp.stream->rtp_sinks, "peer address unconfirmed");

Loading…
Cancel
Save