Be sure we still check for proper buffer length

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3685 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.0
Mark Spencer 21 years ago
parent 8ff9c0d1b9
commit 6749f1b8b5

@ -452,6 +452,11 @@ struct ast_frame *ast_rtp_read(struct ast_rtp *rtp)
hdrlen += (rtpheader[3] & 0xffff) << 2; hdrlen += (rtpheader[3] & 0xffff) << 2;
} }
if (res < hdrlen) {
ast_log(LOG_WARNING, "RTP Read too short (%d, expecting %d)\n", res, hdrlen);
return &null_frame;
}
#if 0 #if 0
printf("Got RTP packet from %s:%d (type %d, seq %d, ts %d, len = %d)\n", ast_inet_ntoa(iabuf, sizeof(iabuf), sin.sin_addr), ntohs(sin.sin_port), payloadtype, seqno, timestamp,res - hdrlen); printf("Got RTP packet from %s:%d (type %d, seq %d, ts %d, len = %d)\n", ast_inet_ntoa(iabuf, sizeof(iabuf), sin.sin_addr), ntohs(sin.sin_port), payloadtype, seqno, timestamp,res - hdrlen);
#endif #endif

Loading…
Cancel
Save