File CVE-2018-19801-filterbank-validate-input-parameters.patch of Package aubio.10462

From eda95c9c22b4f0b466ae94c4708765eaae6e709e Mon Sep 17 00:00:00 2001
From: Paul Brossier <piem@piem.org>
Date: Sat, 24 Nov 2018 16:29:45 +0100
Subject: [PATCH] [filterbank] validate input parameters

---
 src/spectral/filterbank.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

--- a/src/spectral/filterbank.c
+++ b/src/spectral/filterbank.c
@@ -39,6 +39,15 @@ new_aubio_filterbank (uint_t n_filters,
 {
   /* allocate space for filterbank object */
   aubio_filterbank_t *fb = AUBIO_NEW (aubio_filterbank_t);
+
+  if ((sint_t)n_filters <= 0) {
+    AUBIO_ERR("filterbank: n_filters should be > 0, got %d\n", n_filters);
+    goto fail;
+  }
+  if ((sint_t)win_s <= 0) {
+    AUBIO_ERR("filterbank: win_s should be > 0, got %d\n", win_s);
+    goto fail;
+  }
   fb->win_s = win_s;
   fb->n_filters = n_filters;
 
@@ -46,6 +55,9 @@ new_aubio_filterbank (uint_t n_filters,
   fb->filters = new_fmat (n_filters, win_s / 2 + 1);
 
   return fb;
+fail:
+  AUBIO_FREE (fb);
+  return NULL;
 }
 
 void
openSUSE Build Service is sponsored by