gsth264parser: reject memory management control op greater than 6
authorAaron Boxer <aaron.boxer@collabora.com>
Fri, 3 Sep 2021 18:57:09 +0000 (14:57 -0400)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 9 Sep 2021 15:32:14 +0000 (15:32 +0000)
This prevents assertion from being thrown in
gst_h264_dpb_perform_memory_management_control_operation
if corrupt NAL has a control op greater than 6

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2508>

gst-libs/gst/codecparsers/gsth264parser.c

index e1703c5..4aaced9 100644 (file)
@@ -723,7 +723,7 @@ gst_h264_slice_parse_dec_ref_pic_marking (GstH264SliceHdr * slice,
 
       dec_ref_pic_m->n_ref_pic_marking = 0;
       while (1) {
-        READ_UE (nr, mem_mgmt_ctrl_op);
+        READ_UE_MAX (nr, mem_mgmt_ctrl_op, 6);
         if (mem_mgmt_ctrl_op == 0)
           break;