From fb157fc3a5f46e294c5ed58f4a738539ff29c40e Mon Sep 17 00:00:00 2001 From: Liong Sauw Ming Date: Tue, 14 Jul 2015 01:18:19 +0000 Subject: Fixed #1869: Destroy STUN session when cleaning up STUN server resolution Thanks to Itay Bianco for the patch git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5133 74dad513-b988-da41-8d7b-12977e46ad98 --- pjsip/src/pjsua-lib/pjsua_core.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'pjsip') diff --git a/pjsip/src/pjsua-lib/pjsua_core.c b/pjsip/src/pjsua-lib/pjsua_core.c index 29febd60..a599bd45 100644 --- a/pjsip/src/pjsua-lib/pjsua_core.c +++ b/pjsip/src/pjsua-lib/pjsua_core.c @@ -1161,7 +1161,20 @@ static void destroy_stun_resolve(pjsua_stun_resolve *sess) return; PJSUA_LOCK(); + + if (sess->stun_sock) { + pj_stun_sock_destroy(sess->stun_sock); + sess->stun_sock = NULL; + } + + if (pjsua_var.stun_status == PJ_EUNKNOWN || + pjsua_var.stun_status == PJ_EPENDING) + { + pjsua_var.stun_status = PJNATH_ESTUNDESTROYED; + } + pj_list_erase(sess); + PJSUA_UNLOCK(); pj_assert(sess->stun_sock==NULL); -- cgit v1.2.3