]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/4.10.7/mmc-ushc-fix-null-deref-at-probe.patch
4.9-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 4.10.7 / mmc-ushc-fix-null-deref-at-probe.patch
CommitLineData
90594201
GKH
1From 181302dc7239add8ab1449c23ecab193f52ee6ab Mon Sep 17 00:00:00 2001
2From: Johan Hovold <johan@kernel.org>
3Date: Mon, 13 Mar 2017 13:40:22 +0100
4Subject: mmc: ushc: fix NULL-deref at probe
5
6From: Johan Hovold <johan@kernel.org>
7
8commit 181302dc7239add8ab1449c23ecab193f52ee6ab upstream.
9
10Make sure to check the number of endpoints to avoid dereferencing a
11NULL-pointer should a malicious device lack endpoints.
12
13Fixes: 53f3a9e26ed5 ("mmc: USB SD Host Controller (USHC) driver")
14Cc: David Vrabel <david.vrabel@csr.com>
15Signed-off-by: Johan Hovold <johan@kernel.org>
16Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
17Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
18
19---
20 drivers/mmc/host/ushc.c | 3 +++
21 1 file changed, 3 insertions(+)
22
23--- a/drivers/mmc/host/ushc.c
24+++ b/drivers/mmc/host/ushc.c
25@@ -426,6 +426,9 @@ static int ushc_probe(struct usb_interfa
26 struct ushc_data *ushc;
27 int ret;
28
29+ if (intf->cur_altsetting->desc.bNumEndpoints < 1)
30+ return -ENODEV;
31+
32 mmc = mmc_alloc_host(sizeof(struct ushc_data), &intf->dev);
33 if (mmc == NULL)
34 return -ENOMEM;