summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/libsndfile/libsndfile1/CVE-2021-4156.patch
blob: f7ae82588f1aa1a67225bd51a97c64a3b3597d7c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
From ced91d7b971be6173b604154c39279ce90ad87cc Mon Sep 17 00:00:00 2001
From: yuan <ssspeed00@gmail.com>
Date: Tue, 20 Apr 2021 16:16:32 +0800
Subject: [PATCH] flac: Fix improper buffer reusing (#732)

Upstream-Status: Backport [https://github.com/libsndfile/libsndfile/commit/ced91d7b971be6173b604154c39279ce90ad87cc]
CVE: CVE-2021-4156
Signed-off-by: Vivek Kumbhar <vkumbhar@mvista.com>
---
 src/flac.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/flac.c b/src/flac.c
index 0be82ac..4fa5cfa 100644
--- a/src/flac.c
+++ b/src/flac.c
@@ -952,7 +952,11 @@ flac_read_loop (SF_PRIVATE *psf, unsigned len)
	/* Decode some more. */
	while (pflac->pos < pflac->len)
	{	if (FLAC__stream_decoder_process_single (pflac->fsd) == 0)
+		{	psf_log_printf (psf, "FLAC__stream_decoder_process_single returned false\n") ;
+			/* Current frame is busted, so NULL the pointer. */
+			pflac->frame = NULL ;
			break ;
+			} ;
		state = FLAC__stream_decoder_get_state (pflac->fsd) ;
		if (state >= FLAC__STREAM_DECODER_END_OF_STREAM)
		{	psf_log_printf (psf, "FLAC__stream_decoder_get_state returned %s\n", FLAC__StreamDecoderStateString [state]) ;
--
2.40.1