mirror of https://git.ffmpeg.org/ffmpeg.git
avformat/hls: Use unsigned for iv computation
Fixes: signed integer overflow: 9223372036854775748 + 60 cannot be represented in type 'long' Fixes: 44417/clusterfuzz-testcase-minimized-ffmpeg_dem_HLS_fuzzer-5802443881971712 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
6ee283d7d0
commit
bf33a38499
|
@ -914,7 +914,7 @@ static int parse_playlist(HLSContext *c, const char *url,
|
||||||
if (has_iv) {
|
if (has_iv) {
|
||||||
memcpy(seg->iv, iv, sizeof(iv));
|
memcpy(seg->iv, iv, sizeof(iv));
|
||||||
} else {
|
} else {
|
||||||
int64_t seq = pls->start_seq_no + pls->n_segments;
|
uint64_t seq = pls->start_seq_no + (uint64_t)pls->n_segments;
|
||||||
memset(seg->iv, 0, sizeof(seg->iv));
|
memset(seg->iv, 0, sizeof(seg->iv));
|
||||||
AV_WB64(seg->iv + 8, seq);
|
AV_WB64(seg->iv + 8, seq);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue