From patchwork Wed Feb 6 00:00:23 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: rtlwifi: rtl8192cu: Fix NULL dereference BUG when using new_id From: Larry Finger X-Patchwork-Id: 218465 Message-Id: <1360108823-5141-1-git-send-email-Larry.Finger@lwfinger.net> To: linville@tuxdriver.com Cc: linux-wireless@vger.kernel.org, Larry Finger , netdev@vger.kernel.org, Stable Date: Tue, 5 Feb 2013 18:00:23 -0600 When the new_id entry is used for a foreign USB device, rtlwifi BUGS with a NULL pointer dereference. Signed-off-by: Larry Finger Cc: Stable --- John, Although this patch should be backported to stable kernels, the new_id feature is rarely used, thus the patch should not have any particular priority. Larry --- drivers/net/wireless/rtlwifi/usb.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/wireless/rtlwifi/usb.c b/drivers/net/wireless/rtlwifi/usb.c index d42bbe2..77a7517 100644 --- a/drivers/net/wireless/rtlwifi/usb.c +++ b/drivers/net/wireless/rtlwifi/usb.c @@ -977,6 +977,9 @@ int rtl_usb_probe(struct usb_interface *intf, rtl_dbgp_flag_init(hw); /* Init IO handler */ _rtl_usb_io_handler_init(&udev->dev, hw); + if (!rtlpriv->cfg || !rtlpriv->cfg->ops || + !rtlpriv->cfg->ops->read_chip_version) + return -ENODEV; rtlpriv->cfg->ops->read_chip_version(hw); /*like read eeprom and so on */ rtlpriv->cfg->ops->read_eeprom_info(hw);