staging: rtl8188eu: fix possible NULL dereference
authorSudip Mukherjee <sudipm.mukherjee@gmail.com>
Fri, 14 Aug 2015 16:27:51 +0000 (21:57 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 15 Aug 2015 02:20:39 +0000 (19:20 -0700)
dm_odm was being checked for NULL after dereferencing it. Lets check for
NULL first before derefenrencing it.

Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8188eu/hal/Hal8188ERateAdaptive.c

index 15a176596305c8cd4d7536078d5c4ed748438745..2633a13b4e5857b6e2a0cd8f356fe8c1235f5a16 100644 (file)
@@ -659,11 +659,11 @@ void ODM_RA_UpdateRateInfo_8188E(struct odm_dm_struct *dm_odm, u8 macid, u8 Rate
 {
        struct odm_ra_info *pRaInfo = NULL;
 
+       if ((NULL == dm_odm) || (macid >= ASSOCIATE_ENTRY_NUM))
+               return;
        ODM_RT_TRACE(dm_odm, ODM_COMP_RATE_ADAPTIVE, ODM_DBG_LOUD,
                     ("macid =%d RateID = 0x%x RateMask = 0x%x SGIEnable =%d\n",
                     macid, RateID, RateMask, SGIEnable));
-       if ((NULL == dm_odm) || (macid >= ASSOCIATE_ENTRY_NUM))
-               return;
 
        pRaInfo = &(dm_odm->RAInfo[macid]);
        pRaInfo->RateID = RateID;
@@ -676,10 +676,10 @@ void ODM_RA_SetRSSI_8188E(struct odm_dm_struct *dm_odm, u8 macid, u8 Rssi)
 {
        struct odm_ra_info *pRaInfo = NULL;
 
-       ODM_RT_TRACE(dm_odm, ODM_COMP_RATE_ADAPTIVE, ODM_DBG_TRACE,
-                    (" macid =%d Rssi =%d\n", macid, Rssi));
        if ((NULL == dm_odm) || (macid >= ASSOCIATE_ENTRY_NUM))
                return;
+       ODM_RT_TRACE(dm_odm, ODM_COMP_RATE_ADAPTIVE, ODM_DBG_TRACE,
+                    (" macid =%d Rssi =%d\n", macid, Rssi));
 
        pRaInfo = &(dm_odm->RAInfo[macid]);
        pRaInfo->RssiStaRA = Rssi;