Given the non-default configuration of enabling ICE support on an
endpoint that does not result in an ICE negotiation occurring the
ICE candidates would be leaked.
This change makes it so that the ICE candidates are only retrieved
if ICE negotiation is occurring.
ASTERISK-28460
Change-Id: I7b3f76f031c41fb8a3dc3ef1a84b77e2a8cb969f
struct ast_rtp_engine_ice_candidate *candidate;
if (!session->endpoint->media.rtp.ice_support || !(ice = ast_rtp_instance_get_ice(session_media->rtp)) ||
- !(candidates = ice->get_local_candidates(session_media->rtp))) {
- return;
- }
-
- if (!session_media->remote_ice) {
+ !session_media->remote_ice || !(candidates = ice->get_local_candidates(session_media->rtp))) {
return;
}