diff options
author | Olivier Crête <olivier.crete@collabora.com> | 2011-07-12 18:03:53 -0400 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.net> | 2012-11-01 20:53:47 +0000 |
commit | 97c3f3617cad778dfe7ccd8470b6e0f83971910f (patch) | |
tree | dec591ec6ed3742d1bcbed57772cbf4d4ddf2875 /gst/rtp/gstrtpvp8pay.c | |
parent | 74a1a704bf2726260ffbf2686ef8cceb184a6f1a (diff) |
rtpvp8: Reject unknown bitstream versions
Diffstat (limited to 'gst/rtp/gstrtpvp8pay.c')
-rw-r--r-- | gst/rtp/gstrtpvp8pay.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gst/rtp/gstrtpvp8pay.c b/gst/rtp/gstrtpvp8pay.c index b54ec2898..c6c773dca 100644 --- a/gst/rtp/gstrtpvp8pay.c +++ b/gst/rtp/gstrtpvp8pay.c @@ -141,6 +141,11 @@ gst_rtp_vp8_pay_parse_frame (GstRtpVP8Pay * self, GstBuffer * buffer) self->is_keyframe = keyframe = ((data[0] & 0x1) == 0); version = (data[0] >> 1) & 0x7; + if (G_UNLIKELY (version > 3)) { + GST_ERROR_OBJECT (self, "Unknown VP8 version %u", version); + goto error; + } + /* keyframe, version and show_frame use 5 bits */ header_size = data[2] << 11 | data[1] << 3 | (data[0] >> 5); |