From 1746d2ebc026e54aac35304b8885f385bb1067da Mon Sep 17 00:00:00 2001 From: Seven Du Date: Thu, 7 Jan 2016 14:11:48 +0800 Subject: [PATCH] FS-8713 #resolve avoid read exceeding buffer --- src/switch_jitterbuffer.c | 2 ++ src/switch_rtp.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/switch_jitterbuffer.c b/src/switch_jitterbuffer.c index 3d096c764d..1bfc63fce2 100644 --- a/src/switch_jitterbuffer.c +++ b/src/switch_jitterbuffer.c @@ -1088,6 +1088,8 @@ SWITCH_DECLARE(switch_status_t) switch_jb_put_packet(switch_jb_t *jb, switch_rtp uint32_t i; uint16_t want = ntohs(jb->next_seq), got = ntohs(packet->header.seq); + switch_assert(len <= SWITCH_RTP_MAX_BUF_LEN); + switch_mutex_lock(jb->mutex); if (!want) want = got; diff --git a/src/switch_rtp.c b/src/switch_rtp.c index 5646b8e86e..d88de1e89e 100644 --- a/src/switch_rtp.c +++ b/src/switch_rtp.c @@ -5132,7 +5132,7 @@ static switch_status_t read_rtp_packet(switch_rtp_t *rtp_session, switch_size_t block = 0; } - *bytes = sizeof(rtp_msg_t); + *bytes = SWITCH_RTP_MAX_BUF_LEN; sync = 0; rtp_session->has_rtp = 0;