From 18abfd30630ebce0a6c4da83900fbcbb7abef9f2 Mon Sep 17 00:00:00 2001 From: kyxlx550 Date: Thu, 2 Jul 2020 01:32:32 +0800 Subject: [PATCH] fix ps to h264 frame_size < 0 checkt --- trunk/src/app/srs_app_gb28181.cpp | 8 ++++++++ trunk/src/kernel/srs_kernel_error.hpp | 2 ++ 2 files changed, 10 insertions(+) diff --git a/trunk/src/app/srs_app_gb28181.cpp b/trunk/src/app/srs_app_gb28181.cpp index ddebd4415..5f3dabaa5 100644 --- a/trunk/src/app/srs_app_gb28181.cpp +++ b/trunk/src/app/srs_app_gb28181.cpp @@ -1310,6 +1310,14 @@ srs_error_t SrsGb28181RtmpMuxer::write_h264_ipb_frame2(char *frame, int frame_si { srs_error_t err = srs_success; + if (!frame){ + return srs_error_new(ERROR_GB28181_H264_FRAME_FULL, "h264 frame null"); + } + + if (frame_size <= 0){ + return srs_error_new(ERROR_GB28181_H264_FRAMESIZE, "h264 frame size"); + } + SrsAvcNaluType nal_unit_type = (SrsAvcNaluType)(frame[0] & 0x1f); // ignore the nalu type sei(6) aud(9) if (nal_unit_type == SrsAvcNaluTypeAccessUnitDelimiter || diff --git a/trunk/src/kernel/srs_kernel_error.hpp b/trunk/src/kernel/srs_kernel_error.hpp index 9920b73b3..f8bd3e62e 100644 --- a/trunk/src/kernel/srs_kernel_error.hpp +++ b/trunk/src/kernel/srs_kernel_error.hpp @@ -375,6 +375,8 @@ #define ERROR_GB28181_SIP_PTZ_FAILED 6016 #define ERROR_GB28181_SIP_NOT_INVITE 6017 #define ERROR_GB28181_SIP_PTZ_CMD_INVALID 6018 +#define ERROR_GB28181_H264_FRAMESIZE 6019 +#define ERROR_GB28181_H264_FRAME_FULL 6020 /////////////////////////////////////////////////////// // HTTP API error.