[FFmpeg-devel] [PATCH 3/8] avfilter/vf_lut3d: Check av_scanf()
Michael Niedermayer
michael at niedermayer.cc
Tue Jul 9 01:24:05 EEST 2024
Fixes: CID1604398 Unchecked return value
Fixes: CID1604542 Unchecked return value
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
libavfilter/vf_lut3d.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/libavfilter/vf_lut3d.c b/libavfilter/vf_lut3d.c
index d8ceb2a4240..929bf61b877 100644
--- a/libavfilter/vf_lut3d.c
+++ b/libavfilter/vf_lut3d.c
@@ -703,7 +703,8 @@ try_again:
else if (!strncmp(line + 7, "MAX ", 4)) vals = max;
if (!vals)
return AVERROR_INVALIDDATA;
- av_sscanf(line + 11, "%f %f %f", vals, vals + 1, vals + 2);
+ if (av_sscanf(line + 11, "%f %f %f", vals, vals + 1, vals + 2) != 3)
+ return AVERROR_INVALIDDATA;
av_log(ctx, AV_LOG_DEBUG, "min: %f %f %f | max: %f %f %f\n",
min[0], min[1], min[2], max[0], max[1], max[2]);
goto try_again;
@@ -1734,12 +1735,14 @@ try_again:
else if (!strncmp(line + 7, "MAX ", 4)) vals = max;
if (!vals)
return AVERROR_INVALIDDATA;
- av_sscanf(line + 11, "%f %f %f", vals, vals + 1, vals + 2);
+ if (av_sscanf(line + 11, "%f %f %f", vals, vals + 1, vals + 2) != 3)
+ return AVERROR_INVALIDDATA;
av_log(ctx, AV_LOG_DEBUG, "min: %f %f %f | max: %f %f %f\n",
min[0], min[1], min[2], max[0], max[1], max[2]);
goto try_again;
} else if (!strncmp(line, "LUT_1D_INPUT_RANGE ", 19)) {
- av_sscanf(line + 19, "%f %f", min, max);
+ if (av_sscanf(line + 19, "%f %f", min, max) != 2)
+ return AVERROR_INVALIDDATA;
min[1] = min[2] = min[0];
max[1] = max[2] = max[0];
goto try_again;
--
2.45.2
More information about the ffmpeg-devel
mailing list