From: Anthony Minessale Date: Wed, 10 Apr 2013 00:43:10 +0000 (-0500) Subject: fix udptl issue X-Git-Tag: v1.5.1~258 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=72df7a9fe59e4fb0e995c36004c85347dde5129f;p=thirdparty%2Ffreeswitch.git fix udptl issue --- diff --git a/src/switch_rtp.c b/src/switch_rtp.c index 87d6526f48..77d2da890c 100644 --- a/src/switch_rtp.c +++ b/src/switch_rtp.c @@ -3721,7 +3721,7 @@ static switch_status_t read_rtp_packet(switch_rtp_t *rtp_session, switch_size_t { switch_status_t status = SWITCH_STATUS_FALSE; stfu_frame_t *jb_frame; - uint32_t ts; + uint32_t ts = 0; char *b = NULL; switch_assert(bytes); @@ -3730,6 +3730,10 @@ static switch_status_t read_rtp_packet(switch_rtp_t *rtp_session, switch_size_t status = switch_socket_recvfrom(rtp_session->from_addr, rtp_session->sock_input, 0, (void *) &rtp_session->recv_msg, bytes); + if (rtp_session->flags[SWITCH_RTP_FLAG_UDPTL]) { + goto udptl; + } + if (*bytes) { b = (char *) &rtp_session->recv_msg; @@ -3802,6 +3806,8 @@ static switch_status_t read_rtp_packet(switch_rtp_t *rtp_session, switch_size_t } } + udptl: + ts = ntohl(rtp_session->recv_msg.header.ts); rtp_session->recv_msg.ebody = NULL;