| From 1b257870a78b0a9ce98fdfb052c58542022ffb5b Mon Sep 17 00:00:00 2001 |
| From: Johan Hovold <johan@kernel.org> |
| Date: Fri, 3 Jan 2020 17:35:13 +0100 |
| Subject: media: iguanair: fix endpoint sanity check |
| |
| From: Johan Hovold <johan@kernel.org> |
| |
| commit 1b257870a78b0a9ce98fdfb052c58542022ffb5b upstream. |
| |
| Make sure to use the current alternate setting, which need not be the |
| first one by index, when verifying the endpoint descriptors and |
| initialising the URBs. |
| |
| Failing to do so could cause the driver to misbehave or trigger a WARN() |
| in usb_submit_urb() that kernels with panic_on_warn set would choke on. |
| |
| Fixes: 26ff63137c45 ("[media] Add support for the IguanaWorks USB IR Transceiver") |
| Fixes: ab1cbdf159be ("media: iguanair: add sanity checks") |
| Cc: stable <stable@vger.kernel.org> # 3.6 |
| Cc: Oliver Neukum <oneukum@suse.com> |
| Signed-off-by: Johan Hovold <johan@kernel.org> |
| Signed-off-by: Sean Young <sean@mess.org> |
| Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/media/rc/iguanair.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/media/rc/iguanair.c |
| +++ b/drivers/media/rc/iguanair.c |
| @@ -413,7 +413,7 @@ static int iguanair_probe(struct usb_int |
| int ret, pipein, pipeout; |
| struct usb_host_interface *idesc; |
| |
| - idesc = intf->altsetting; |
| + idesc = intf->cur_altsetting; |
| if (idesc->desc.bNumEndpoints < 2) |
| return -ENODEV; |
| |