376b103
From f833c53cb596e9e1792949f762e0b33661822748 Mon Sep 17 00:00:00 2001
376b103
From: Erik de Castro Lopo <erikd@mega-nerd.com>
376b103
Date: Tue, 23 May 2017 20:15:24 +1000
376b103
Subject: [PATCH] src/aiff.c: Fix a buffer read overflow
376b103
376b103
Secunia Advisory SA76717.
376b103
376b103
Found by: Laurent Delosieres, Secunia Research at Flexera Software
376b103
---
376b103
 src/aiff.c | 2 +-
376b103
 1 file changed, 1 insertion(+), 1 deletion(-)
376b103
376b103
diff --git a/src/aiff.c b/src/aiff.c
376b103
index 5b5f9f53..45864b76 100644
376b103
--- a/src/aiff.c
376b103
+++ b/src/aiff.c
376b103
@@ -1759,7 +1759,7 @@ aiff_read_chanmap (SF_PRIVATE * psf, unsigned dword)
376b103
 		psf_binheader_readf (psf, "j", dword - bytesread) ;
376b103
 
376b103
 	if (map_info->channel_map != NULL)
376b103
-	{	size_t chanmap_size = psf->sf.channels * sizeof (psf->channel_map [0]) ;
376b103
+	{	size_t chanmap_size = SF_MIN (psf->sf.channels, layout_tag & 0xffff) * sizeof (psf->channel_map [0]) ;
376b103
 
376b103
 		free (psf->channel_map) ;
376b103