Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ccd95369 authored by Wei Yongjun's avatar Wei Yongjun Committed by John W. Linville
Browse files

rtlwifi: use eth_zero_addr() to assign zero address



Using eth_zero_addr() to assign zero address insetad of
memset() or an inefficient copy from a static array.

Signed-off-by: default avatarWei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 9c033bed
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -337,7 +337,7 @@ void rtl_cam_del_entry(struct ieee80211_hw *hw, u8 *sta_addr)
		if (((bitmap & BIT(0)) == BIT(0)) &&
		if (((bitmap & BIT(0)) == BIT(0)) &&
		    (memcmp(addr, sta_addr, ETH_ALEN) == 0)) {
		    (memcmp(addr, sta_addr, ETH_ALEN) == 0)) {
			/* Remove from HW Security CAM */
			/* Remove from HW Security CAM */
			memset(rtlpriv->sec.hwsec_cam_sta_addr[i], 0, ETH_ALEN);
			eth_zero_addr(rtlpriv->sec.hwsec_cam_sta_addr[i]);
			rtlpriv->sec.hwsec_cam_bitmap &= ~(BIT(0) << i);
			rtlpriv->sec.hwsec_cam_bitmap &= ~(BIT(0) << i);
			RT_TRACE(rtlpriv, COMP_SEC, DBG_LOUD,
			RT_TRACE(rtlpriv, COMP_SEC, DBG_LOUD,
				 "del CAM entry %d\n", i);
				 "del CAM entry %d\n", i);
+2 −3
Original line number Original line Diff line number Diff line
@@ -962,7 +962,6 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
	int err = 0;
	int err = 0;
	u8 mac_addr[ETH_ALEN];
	u8 mac_addr[ETH_ALEN];
	u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
	u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
	u8 zero_addr[ETH_ALEN] = { 0 };


	if (rtlpriv->cfg->mod_params->sw_crypto || rtlpriv->sec.use_sw_sec) {
	if (rtlpriv->cfg->mod_params->sw_crypto || rtlpriv->sec.use_sw_sec) {
		RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING,
		RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING,
@@ -1057,7 +1056,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
			memcpy(rtlpriv->sec.key_buf[key_idx],
			memcpy(rtlpriv->sec.key_buf[key_idx],
			       key->key, key->keylen);
			       key->key, key->keylen);
			rtlpriv->sec.key_len[key_idx] = key->keylen;
			rtlpriv->sec.key_len[key_idx] = key->keylen;
			memcpy(mac_addr, zero_addr, ETH_ALEN);
			eth_zero_addr(mac_addr);
		} else if (group_key) {	/* group key */
		} else if (group_key) {	/* group key */
			RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
			RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
				 "set group key\n");
				 "set group key\n");
@@ -1108,7 +1107,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
		}
		}
		memset(rtlpriv->sec.key_buf[key_idx], 0, key->keylen);
		memset(rtlpriv->sec.key_buf[key_idx], 0, key->keylen);
		rtlpriv->sec.key_len[key_idx] = 0;
		rtlpriv->sec.key_len[key_idx] = 0;
		memcpy(mac_addr, zero_addr, ETH_ALEN);
		eth_zero_addr(mac_addr);
		/*
		/*
		 *mac80211 will delete entrys one by one,
		 *mac80211 will delete entrys one by one,
		 *so don't use rtl_cam_reset_all_entry
		 *so don't use rtl_cam_reset_all_entry