summaryrefslogtreecommitdiff
path: root/pjnath/src/pjnath/turn_sock.c
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2017-01-11 07:29:46 +0000
committerNanang Izzuddin <nanang@teluu.com>2017-01-11 07:29:46 +0000
commit9842aad980028b1de110e5bd18b99e1469ceeb74 (patch)
tree55c37979afed1f0f8c35a466bbf5de86dcb77a2b /pjnath/src/pjnath/turn_sock.c
parent8610e097171150a4b4b07e397bcdab07c63fb279 (diff)
Fixed #1990:
- Added check for possibility of premature failure in pj_turn_sock_alloc() after pj_turn_session_set_server() returns PJ_SUCCESS. - Added more logs on ICE initialization progress for future debugging. git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@5521 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjnath/src/pjnath/turn_sock.c')
-rw-r--r--pjnath/src/pjnath/turn_sock.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/pjnath/src/pjnath/turn_sock.c b/pjnath/src/pjnath/turn_sock.c
index f1f5bb6d..ef28803a 100644
--- a/pjnath/src/pjnath/turn_sock.c
+++ b/pjnath/src/pjnath/turn_sock.c
@@ -428,6 +428,14 @@ PJ_DEF(pj_status_t) pj_turn_sock_alloc(pj_turn_sock *turn_sock,
sess_fail(turn_sock, "Error setting TURN server", status);
pj_grp_lock_release(turn_sock->grp_lock);
return status;
+ } else if (!turn_sock->sess) {
+ /* TURN session may have been destroyed here, i.e: when DNS resolution
+ * completed synchronously and TURN allocation failed.
+ */
+ PJ_LOG(4,(turn_sock->obj_name, "TURN session destroyed in setting "
+ "TURN server"));
+ pj_grp_lock_release(turn_sock->grp_lock);
+ return PJ_EGONE;
}
/* Done for now. The next work will be done when session state moved