Ignore invalid RTP packets (bug #3030)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Spencer
2004-12-28 16:45:03 +00:00
parent 46ffd20c48
commit 8bb060d8ac

7
rtp.c
View File

@@ -427,6 +427,7 @@ struct ast_frame *ast_rtp_read(struct ast_rtp *rtp)
struct sockaddr_in sin;
int len;
unsigned int seqno;
int version;
int payloadtype;
int hdrlen = 12;
int mark;
@@ -477,6 +478,12 @@ struct ast_frame *ast_rtp_read(struct ast_rtp *rtp)
/* Get fields */
seqno = ntohl(rtpheader[0]);
/* Check RTP version */
version = (seqno & 0xC0000000) >> 30;
if (version != 2)
return &null_frame;
payloadtype = (seqno & 0x7f0000) >> 16;
mark = seqno & (1 << 23);
ext = seqno & (1 << 28);