summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2017-08-25 17:05:06 -0500
committerRichard Mudgett <rmudgett@digium.com>2017-09-05 14:46:40 -0500
commit6d8c40659f6ad771ec105e225f411d1d5436321d (patch)
tree02046a86e9b084add4d8f66367c7d805029125a1
parentca19d0991459b5823ad8d73ffc9411f79ef8db80 (diff)
res_rtp_asterisk.c: Check RTP packet version earlier.
Change-Id: Ic6493a7d79683f3e5845dff1cee49445fd5a0adf
-rw-r--r--res/res_rtp_asterisk.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/res/res_rtp_asterisk.c b/res/res_rtp_asterisk.c
index fa0baf21a..acc61c7e5 100644
--- a/res/res_rtp_asterisk.c
+++ b/res/res_rtp_asterisk.c
@@ -5069,6 +5069,11 @@ static struct ast_frame *ast_rtp_read(struct ast_rtp_instance *instance, int rtc
return &ast_null_frame;
}
+ /* If the version is not what we expected by this point then just drop the packet */
+ if (version != 2) {
+ return &ast_null_frame;
+ }
+
/* If strict RTP protection is enabled see if we need to learn the remote address or if we need to drop the packet */
if (rtp->strict_rtp_state == STRICT_RTP_LEARN) {
if (!ast_sockaddr_cmp(&rtp->strict_rtp_address, &addr)) {
@@ -5115,11 +5120,6 @@ static struct ast_frame *ast_rtp_read(struct ast_rtp_instance *instance, int rtc
}
}
- /* If the version is not what we expected by this point then just drop the packet */
- if (version != 2) {
- return &ast_null_frame;
- }
-
/* Pull out the various other fields we will need */
payloadtype = (seqno & 0x7f0000) >> 16;
padding = seqno & (1 << 29);