Eliminate the wrapper _rtw_memset() - not finished

This commit is contained in:
kimocoder 2019-02-14 18:02:03 +01:00
parent f5dbdd0e27
commit 4da6cc0197
3 changed files with 30 additions and 31 deletions

View File

@ -47,17 +47,16 @@ unmanaged-devices=mac:A7:A7:A7:A7:A7
``` ```
# TODO # TODO
* Finish the walkthrough of the base for understanding.
* Fix a issue where the interface is down on startup * Fix a issue where the interface is down on startup
* Fix the out of bounds reference * Finish up the elimination of the wrapper _rtw_memset.
* Supress some debug messages (dmesg) about powersaving I didn't have more time after "rtw_beamforming.c"
* There is a bug in monitor mode related to Network-Manager. * There is a bug in monitor mode related to Network-Manager.
This needs priority because it causes interferrence. This needs priority because it causes interferrence.
* Add HT (RX) Greenfield capabilities * Add HT (RX) Greenfield capabilities
* pcap_activate error on "reaver" - investigate * pcap_activate error on "reaver" - investigate
* Go through the VHT. * Go through the VHT.
* Add DKMS support
* Add/upload the documentation * Add/upload the documentation
* Add more VID/PIDS for all 3 chipsets supported. * Add more VID/PIDS for all 3 chipsets supported.
* Remove unused functions
<br> <br>
more tba.. more tba..

View File

@ -954,7 +954,7 @@ void update_bmc_sta(_adapter *padapter)
psta->ieee8021x_blocked = 0; psta->ieee8021x_blocked = 0;
_rtw_memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats)); memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
/* psta->dot118021XPrivacy = _NO_PRIVACY_; */ /* !!! remove it, because it has been set before this. */ /* psta->dot118021XPrivacy = _NO_PRIVACY_; */ /* !!! remove it, because it has been set before this. */
@ -1134,7 +1134,7 @@ void update_sta_info_apmode(_adapter *padapter, struct sta_info *psta)
/* todo: init other variables */ /* todo: init other variables */
_rtw_memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats)); memset((void *)&psta->sta_stats, 0, sizeof(struct stainfo_stats));
/* add ratid */ /* add ratid */
@ -1806,7 +1806,7 @@ int rtw_check_beacon_data(_adapter *padapter, u8 *pbuf, int len)
pbss_network->IELength = len; pbss_network->IELength = len;
_rtw_memset(ie, 0, MAX_IE_SZ); memset(ie, 0, MAX_IE_SZ);
_rtw_memcpy(ie, pbuf, pbss_network->IELength); _rtw_memcpy(ie, pbuf, pbss_network->IELength);
@ -1839,7 +1839,7 @@ int rtw_check_beacon_data(_adapter *padapter, u8 *pbuf, int len)
/* SSID */ /* SSID */
p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _SSID_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_)); p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _SSID_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_));
if (p && ie_len > 0) { if (p && ie_len > 0) {
_rtw_memset(&pbss_network->Ssid, 0, sizeof(NDIS_802_11_SSID)); memset(&pbss_network->Ssid, 0, sizeof(NDIS_802_11_SSID));
_rtw_memcpy(pbss_network->Ssid.Ssid, (p + 2), ie_len); _rtw_memcpy(pbss_network->Ssid.Ssid, (p + 2), ie_len);
pbss_network->Ssid.SsidLength = ie_len; pbss_network->Ssid.SsidLength = ie_len;
#ifdef CONFIG_P2P #ifdef CONFIG_P2P
@ -1870,7 +1870,7 @@ int rtw_check_beacon_data(_adapter *padapter, u8 *pbuf, int len)
pbss_network->Configuration.DSConfig = channel; pbss_network->Configuration.DSConfig = channel;
_rtw_memset(supportRate, 0, NDIS_802_11_LENGTH_RATES_EX); memset(supportRate, 0, NDIS_802_11_LENGTH_RATES_EX);
/* get supported rates */ /* get supported rates */
p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _SUPPORTEDRATES_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_)); p = rtw_get_ie(ie + _BEACON_IE_OFFSET_, _SUPPORTEDRATES_IE_, &ie_len, (pbss_network->IELength - _BEACON_IE_OFFSET_));
if (p != NULL) { if (p != NULL) {
@ -2606,7 +2606,7 @@ static int rtw_ap_set_key(_adapter *padapter, u8 *key, u8 alg, int keyid, u8 set
goto exit; goto exit;
} }
_rtw_memset(psetkeyparm, 0, sizeof(struct setkey_parm)); memset(psetkeyparm, 0, sizeof(struct setkey_parm));
psetkeyparm->keyid = (u8)keyid; psetkeyparm->keyid = (u8)keyid;
if (is_wep_enc(alg)) if (is_wep_enc(alg))
@ -3972,7 +3972,7 @@ void start_ap_mode(_adapter *padapter)
pmlmepriv->sw_to_20mhz = 0; pmlmepriv->sw_to_20mhz = 0;
#endif #endif
_rtw_memset(pmlmepriv->ext_capab_ie_data, 0, sizeof(pmlmepriv->ext_capab_ie_data)); memset(pmlmepriv->ext_capab_ie_data, 0, sizeof(pmlmepriv->ext_capab_ie_data));
pmlmepriv->ext_capab_ie_len = 0; pmlmepriv->ext_capab_ie_len = 0;
#ifdef CONFIG_CONCURRENT_MODE #ifdef CONFIG_CONCURRENT_MODE
@ -4036,7 +4036,7 @@ void stop_ap_mode(_adapter *padapter)
padapter->netif_up = _FALSE; padapter->netif_up = _FALSE;
/* reset and init security priv , this can refine with rtw_reset_securitypriv */ /* reset and init security priv , this can refine with rtw_reset_securitypriv */
_rtw_memset((unsigned char *)&padapter->securitypriv, 0, sizeof(struct security_priv)); memset((unsigned char *)&padapter->securitypriv, 0, sizeof(struct security_priv));
padapter->securitypriv.ndisauthtype = Ndis802_11AuthModeOpen; padapter->securitypriv.ndisauthtype = Ndis802_11AuthModeOpen;
padapter->securitypriv.ndisencryptstatus = Ndis802_11WEPDisabled; padapter->securitypriv.ndisencryptstatus = Ndis802_11WEPDisabled;

View File

@ -213,7 +213,7 @@ static u8 _send_ht_ndpa_packet(PADAPTER adapter, u8 *ra, enum channel_width bw)
attrib->rate = (u8)txrate; attrib->rate = (u8)txrate;
attrib->bf_pkt_type = 0; attrib->bf_pkt_type = 0;
_rtw_memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET); memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET);
pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET;
pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; pwlanhdr = (struct rtw_ieee80211_hdr *)pframe;
@ -308,7 +308,7 @@ static u8 _send_vht_ndpa_packet(PADAPTER adapter, u8 *ra, u16 aid, enum channel_
attrib->rate = (u8)txrate; attrib->rate = (u8)txrate;
attrib->bf_pkt_type = 0; attrib->bf_pkt_type = 0;
_rtw_memset(pmgntframe->buf_addr, 0, TXDESC_OFFSET + WLANHDR_OFFSET); memset(pmgntframe->buf_addr, 0, TXDESC_OFFSET + WLANHDR_OFFSET);
pframe = pmgntframe->buf_addr + TXDESC_OFFSET; pframe = pmgntframe->buf_addr + TXDESC_OFFSET;
pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; pwlanhdr = (struct rtw_ieee80211_hdr *)pframe;
@ -425,7 +425,7 @@ static u8 _send_vht_mu_ndpa_packet(PADAPTER adapter, enum channel_width bw)
else else
attrib->bf_pkt_type = 0; attrib->bf_pkt_type = 0;
_rtw_memset(pmgntframe->buf_addr, 0, TXDESC_OFFSET + WLANHDR_OFFSET); memset(pmgntframe->buf_addr, 0, TXDESC_OFFSET + WLANHDR_OFFSET);
pframe = pmgntframe->buf_addr + TXDESC_OFFSET; pframe = pmgntframe->buf_addr + TXDESC_OFFSET;
pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; pwlanhdr = (struct rtw_ieee80211_hdr *)pframe;
@ -517,7 +517,7 @@ static u8 _send_bf_report_poll(PADAPTER adapter, u8 *ra, u8 bFinalPoll)
else else
attrib->bf_pkt_type = 2; attrib->bf_pkt_type = 2;
_rtw_memset(pmgntframe->buf_addr, 0, TXDESC_OFFSET + WLANHDR_OFFSET); memset(pmgntframe->buf_addr, 0, TXDESC_OFFSET + WLANHDR_OFFSET);
pframe = pmgntframe->buf_addr + TXDESC_OFFSET; pframe = pmgntframe->buf_addr + TXDESC_OFFSET;
pwlanhdr = (struct rtw_ieee80211_hdr *)pframe; pwlanhdr = (struct rtw_ieee80211_hdr *)pframe;
@ -581,8 +581,8 @@ static void _sounding_update_min_period(PADAPTER adapter, u16 period, u8 leave)
static void _sounding_init(struct sounding_info *sounding) static void _sounding_init(struct sounding_info *sounding)
{ {
_rtw_memset(sounding->su_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_SU); memset(sounding->su_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_SU);
_rtw_memset(sounding->mu_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_MU); memset(sounding->mu_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_MU);
sounding->state = SOUNDING_STATE_NONE; sounding->state = SOUNDING_STATE_NONE;
sounding->su_bfee_curidx = 0xFF; sounding->su_bfee_curidx = 0xFF;
sounding->candidate_mu_bfee_cnt = 0; sounding->candidate_mu_bfee_cnt = 0;
@ -600,8 +600,8 @@ static void _sounding_reset_vars(PADAPTER adapter)
info = GET_BEAMFORM_INFO(adapter); info = GET_BEAMFORM_INFO(adapter);
sounding = &info->sounding_info; sounding = &info->sounding_info;
_rtw_memset(sounding->su_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_SU); memset(sounding->su_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_SU);
_rtw_memset(sounding->mu_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_MU); memset(sounding->mu_sounding_list, 0xFF, MAX_NUM_BEAMFORMEE_MU);
sounding->su_bfee_curidx = 0xFF; sounding->su_bfee_curidx = 0xFF;
sounding->candidate_mu_bfee_cnt = 0; sounding->candidate_mu_bfee_cnt = 0;
@ -1054,8 +1054,8 @@ static void _bfer_remove_entry(PADAPTER adapter, struct beamformer_entry *entry)
if (TEST_FLAG(entry->cap, BEAMFORMER_CAP_VHT_MU)) { if (TEST_FLAG(entry->cap, BEAMFORMER_CAP_VHT_MU)) {
info->beamformer_mu_cnt -= 1; info->beamformer_mu_cnt -= 1;
_rtw_memset(entry->gid_valid, 0, 8); memset(entry->gid_valid, 0, 8);
_rtw_memset(entry->user_position, 0, 16); memset(entry->user_position, 0, 16);
} else if (TEST_FLAG(entry->cap, BEAMFORMER_CAP_VHT_SU|BEAMFORMER_CAP_HT_EXPLICIT)) { } else if (TEST_FLAG(entry->cap, BEAMFORMER_CAP_VHT_SU|BEAMFORMER_CAP_HT_EXPLICIT)) {
info->beamformer_su_cnt -= 1; info->beamformer_su_cnt -= 1;
} }
@ -1245,7 +1245,7 @@ static struct beamformee_entry *_bfee_add_entry(PADAPTER adapter,
RTW_ERR("%s: UNEXPECTED!! info->TargetSUBFee is NULL!", __FUNCTION__); RTW_ERR("%s: UNEXPECTED!! info->TargetSUBFee is NULL!", __FUNCTION__);
} }
info->TargetSUBFee = NULL; info->TargetSUBFee = NULL;
_rtw_memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO)); memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO));
rtw_bf_cmd(adapter, BEAMFORMING_CTRL_SET_CSI_REPORT, (u8*)&info->TargetCSIInfo, sizeof(struct _RT_CSI_INFO), 0); rtw_bf_cmd(adapter, BEAMFORMING_CTRL_SET_CSI_REPORT, (u8*)&info->TargetCSIInfo, sizeof(struct _RT_CSI_INFO), 0);
} }
} }
@ -1268,7 +1268,7 @@ static struct beamformee_entry *_bfee_add_entry(PADAPTER adapter,
/* Record the first SU BFee index. We only allow the first SU BFee to be sound */ /* Record the first SU BFee index. We only allow the first SU BFee to be sound */
if ((info->beamformee_su_cnt == 1) && (info->beamformee_mu_cnt == 0)) { if ((info->beamformee_su_cnt == 1) && (info->beamformee_mu_cnt == 0)) {
info->TargetSUBFee = bfee; info->TargetSUBFee = bfee;
_rtw_memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO)); memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO));
bfee->bSuspendSUCap = _FALSE; bfee->bSuspendSUCap = _FALSE;
} else { } else {
bfee->bSuspendSUCap = _TRUE; bfee->bSuspendSUCap = _TRUE;
@ -1308,7 +1308,7 @@ static void _bfee_remove_entry(PADAPTER adapter, struct beamformee_entry *entry)
if ((info->beamformee_mu_cnt == 0) && (info->beamformee_su_cnt > 0)) { if ((info->beamformee_mu_cnt == 0) && (info->beamformee_su_cnt > 0)) {
idx = _bfee_get_first_su_entry_idx(adapter, NULL); idx = _bfee_get_first_su_entry_idx(adapter, NULL);
info->TargetSUBFee = &info->bfee_entry[idx]; info->TargetSUBFee = &info->bfee_entry[idx];
_rtw_memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO)); memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO));
info->TargetSUBFee->bSuspendSUCap = _FALSE; info->TargetSUBFee->bSuspendSUCap = _FALSE;
} }
} }
@ -1320,7 +1320,7 @@ static void _bfee_remove_entry(PADAPTER adapter, struct beamformee_entry *entry)
&& (entry == info->TargetSUBFee)) { && (entry == info->TargetSUBFee)) {
entry->bSuspendSUCap = _TRUE; entry->bSuspendSUCap = _TRUE;
info->TargetSUBFee = NULL; info->TargetSUBFee = NULL;
_rtw_memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO)); memset(&info->TargetCSIInfo, 0, sizeof(struct _RT_CSI_INFO));
rtw_bf_cmd(adapter, BEAMFORMING_CTRL_SET_CSI_REPORT, (u8*)&info->TargetCSIInfo, sizeof(struct _RT_CSI_INFO), 0); rtw_bf_cmd(adapter, BEAMFORMING_CTRL_SET_CSI_REPORT, (u8*)&info->TargetCSIInfo, sizeof(struct _RT_CSI_INFO), 0);
} }
} }
@ -1711,7 +1711,7 @@ u8 rtw_bf_send_vht_gid_mgnt_packet(PADAPTER adapter, u8 *ra, u8 *gid, u8 *positi
attrib->bwmode = CHANNEL_WIDTH_20; attrib->bwmode = CHANNEL_WIDTH_20;
attrib->subtype = WIFI_ACTION; attrib->subtype = WIFI_ACTION;
_rtw_memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET); memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET);
pframe = (u8 *)pmgntframe->buf_addr + TXDESC_OFFSET; pframe = (u8 *)pmgntframe->buf_addr + TXDESC_OFFSET;
wlanhdr = (struct rtw_ieee80211_hdr *)pframe; wlanhdr = (struct rtw_ieee80211_hdr *)pframe;
@ -2205,7 +2205,7 @@ BOOLEAN issue_ht_sw_ndpa_packet(PADAPTER Adapter, u8 *ra, enum channel_width bw,
pattrib->order = 1; pattrib->order = 1;
pattrib->subtype = WIFI_ACTION_NOACK; pattrib->subtype = WIFI_ACTION_NOACK;
_rtw_memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET); memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET);
pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET;
@ -2281,7 +2281,7 @@ BOOLEAN issue_ht_ndpa_packet(PADAPTER Adapter, u8 *ra, enum channel_width bw, u8
pattrib->order = 1; pattrib->order = 1;
pattrib->subtype = WIFI_ACTION_NOACK; pattrib->subtype = WIFI_ACTION_NOACK;
_rtw_memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET); memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET);
pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET;
@ -2368,7 +2368,7 @@ BOOLEAN issue_vht_sw_ndpa_packet(PADAPTER Adapter, u8 *ra, u16 aid, enum channel
pattrib->bwmode = bw; pattrib->bwmode = bw;
pattrib->subtype = WIFI_NDPA; pattrib->subtype = WIFI_NDPA;
_rtw_memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET); memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET);
pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET;
@ -2454,7 +2454,7 @@ BOOLEAN issue_vht_ndpa_packet(PADAPTER Adapter, u8 *ra, u16 aid, enum channel_wi
pattrib->bwmode = bw; pattrib->bwmode = bw;
pattrib->subtype = WIFI_NDPA; pattrib->subtype = WIFI_NDPA;
_rtw_memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET); memset(pmgntframe->buf_addr, 0, WLANHDR_OFFSET + TXDESC_OFFSET);
pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET; pframe = (u8 *)(pmgntframe->buf_addr) + TXDESC_OFFSET;