summaryrefslogtreecommitdiff
path: root/pjnath
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-06-21 11:48:50 +0000
committerBenny Prijono <bennylp@teluu.com>2007-06-21 11:48:50 +0000
commit608fe14423665363500dea3a4d85e9f39c087621 (patch)
tree765df35261cc29f0c720673bd527beb5fcbf863d /pjnath
parenta73bec4fabd296d54db391af0a29a97c5a149e2a (diff)
Fixed crash in TURN server (thanks Scott Lu)
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1380 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjnath')
-rw-r--r--pjnath/src/pjstun-srv-test/turn_usage.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/pjnath/src/pjstun-srv-test/turn_usage.c b/pjnath/src/pjstun-srv-test/turn_usage.c
index 847b2fac..8549227b 100644
--- a/pjnath/src/pjstun-srv-test/turn_usage.c
+++ b/pjnath/src/pjstun-srv-test/turn_usage.c
@@ -305,11 +305,15 @@ static void tu_on_rx_data(pj_stun_usage *usage,
status = pj_stun_msg_check((const pj_uint8_t*)pkt, pkt_size, flags);
if (status == PJ_SUCCESS) {
- /* Received STUN message */
- status = pj_stun_session_on_rx_pkt(client->session,
- (pj_uint8_t*)pkt, pkt_size,
- flags, NULL,
- src_addr, src_addr_len);
+ if (client->session) {
+ /* Received STUN message */
+ status = pj_stun_session_on_rx_pkt(client->session,
+ (pj_uint8_t*)pkt, pkt_size,
+ flags, NULL,
+ src_addr, src_addr_len);
+ } else {
+ client_destroy(client, PJ_SUCCESS);
+ }
} else if (client->active_peer) {
/* Received non-STUN message and client has active destination */
pj_ssize_t sz = pkt_size;