diff options
author | David P <megver83@parabola.nu> | 2022-05-22 16:50:38 -0400 |
---|---|---|
committer | David P <megver83@parabola.nu> | 2022-05-22 16:50:38 -0400 |
commit | a3b5e5acd774ce8d48d647e5a35f2ce2c7e505c7 (patch) | |
tree | 353b8200faef8a8705159d9166e32b88498b0b23 /libre/sdl/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch | |
parent | be96d1ccac7ec443b1a43f82448fd05408e26d97 (diff) | |
download | abslibre-a3b5e5acd774ce8d48d647e5a35f2ce2c7e505c7.tar.gz abslibre-a3b5e5acd774ce8d48d647e5a35f2ce2c7e505c7.tar.bz2 abslibre-a3b5e5acd774ce8d48d647e5a35f2ce2c7e505c7.zip |
deprecate sdl
Signed-off-by: David P <megver83@parabola.nu>
Diffstat (limited to 'libre/sdl/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch')
-rw-r--r-- | libre/sdl/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/libre/sdl/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch b/libre/sdl/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch deleted file mode 100644 index 2c17831df..000000000 --- a/libre/sdl/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 6086741bda4d43cc227500bc7645a829380e6326 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> -Date: Fri, 15 Feb 2019 09:21:45 +0100 -Subject: [PATCH] CVE-2019-7572: Fix a buffer overwrite in IMA_ADPCM_decode -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -If data chunk was longer than expected based on a WAV format -definition, IMA_ADPCM_decode() tried to write past the output -buffer. This patch fixes it. - -Based on patch from -<https://bugzilla.libsdl.org/show_bug.cgi?id=4496>. - -CVE-2019-7572 -https://bugzilla.libsdl.org/show_bug.cgi?id=4495 - -Signed-off-by: Petr Písař <ppisar@redhat.com> ---- - src/audio/SDL_wave.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/audio/SDL_wave.c b/src/audio/SDL_wave.c -index 69d62dc..91e89e8 100644 ---- a/src/audio/SDL_wave.c -+++ b/src/audio/SDL_wave.c -@@ -336,7 +336,7 @@ static void Fill_IMA_ADPCM_block(Uint8 *decoded, Uint8 *encoded, - static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len) - { - struct IMA_ADPCM_decodestate *state; -- Uint8 *freeable, *encoded, *encoded_end, *decoded; -+ Uint8 *freeable, *encoded, *encoded_end, *decoded, *decoded_end; - Sint32 encoded_len, samplesleft; - unsigned int c, channels; - -@@ -363,6 +363,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len) - return(-1); - } - decoded = *audio_buf; -+ decoded_end = decoded + *audio_len; - - /* Get ready... Go! */ - while ( encoded_len >= IMA_ADPCM_state.wavefmt.blockalign ) { -@@ -382,6 +383,7 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len) - } - - /* Store the initial sample we start with */ -+ if (decoded + 2 > decoded_end) goto invalid_size; - decoded[0] = (Uint8)(state[c].sample&0xFF); - decoded[1] = (Uint8)(state[c].sample>>8); - decoded += 2; -@@ -392,6 +394,8 @@ static int IMA_ADPCM_decode(Uint8 **audio_buf, Uint32 *audio_len) - while ( samplesleft > 0 ) { - for ( c=0; c<channels; ++c ) { - if (encoded + 4 > encoded_end) goto invalid_size; -+ if (decoded + 4 * 4 * channels > decoded_end) -+ goto invalid_size; - Fill_IMA_ADPCM_block(decoded, encoded, - c, channels, &state[c]); - encoded += 4; --- -2.20.1 - |