staging: r8723au: Fix endian errors for frame control
The following locations in the code treat the frame control as u16 rather than
the correct __le16:
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2471:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2644:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2849:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2994:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3308:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3578:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3699:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3821:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3932:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4004:15: expected unsigned short [usertype] *fctrl
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4194:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/core/rtw_xmit.c:911:23: expected unsigned short [usertype] *fctrl
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:216:15: expected unsigned short [usertype] *fctrl
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:313:15: expected unsigned short [usertype] *fctrl
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:350:15: expected unsigned short [usertype] *fctrl
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:419:15: expected unsigned short [usertype] *fctrl
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:314:15: expected unsigned short *fctrl
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2357:15: expected unsigned short *fctrl
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/drivers/staging/rtl8723au/core/rtw_mlme_ext.c b/drivers/staging/rtl8723au/core/rtw_mlme_ext.c
index abaedd2..eb7b98e 100644
--- a/drivers/staging/rtl8723au/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8723au/core/rtw_mlme_ext.c
@@ -2435,7 +2435,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
unsigned int rate_len;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
@@ -2603,7 +2603,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
unsigned char *mac, *bssid;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
#ifdef CONFIG_8723AU_AP_MODE
@@ -2820,7 +2820,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
unsigned char *mac;
unsigned char bssrate[NumRates];
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
@@ -2846,7 +2846,7 @@
mac = myid(&padapter->eeprompriv);
- fctrl = &pwlanhdr->frame_control;
+ fctrl = &pwlanhdr->frame_control;
*fctrl = 0;
if (da) {
@@ -2971,7 +2971,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
unsigned int val32;
unsigned short val16;
int use_shared_key = 0;
@@ -3280,7 +3280,7 @@
unsigned char *pframe;
const u8 *p;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
unsigned int i, j, index = 0;
unsigned char rf_type, bssrate[NumRates], sta_bssrate[NumRates];
struct ndis_802_11_var_ies *pIE;
@@ -3548,7 +3548,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
struct xmit_priv *pxmitpriv;
struct mlme_ext_priv *pmlmeext;
struct mlme_ext_info *pmlmeinfo;
@@ -3671,7 +3671,8 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl, *qc;
+ __le16 *fctrl;
+ u16 *qc;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -3797,7 +3798,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -3908,7 +3909,7 @@
struct pkt_attrib *pattrib;
unsigned char *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
u8 category, action;
@@ -3975,7 +3976,7 @@
struct pkt_attrib *pattrib;
u8 *pframe;
struct ieee80211_hdr *pwlanhdr;
- u16 *fctrl;
+ __le16 *fctrl;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -4155,7 +4156,7 @@
struct pkt_attrib *pattrib;
u8 *pframe;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
struct wlan_network *pnetwork;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
diff --git a/drivers/staging/rtl8723au/core/rtw_xmit.c b/drivers/staging/rtl8723au/core/rtw_xmit.c
index e7252d1..31a44fe 100644
--- a/drivers/staging/rtl8723au/core/rtw_xmit.c
+++ b/drivers/staging/rtl8723au/core/rtw_xmit.c
@@ -908,7 +908,7 @@
struct qos_priv *pqospriv = &pmlmepriv->qospriv;
u8 qos_option = false;
int res = _SUCCESS;
- u16 *fctrl = &pwlanhdr->frame_control;
+ __le16 *fctrl = &pwlanhdr->frame_control;
struct sta_info *psta;
diff --git a/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c b/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c
index be9d724..ffd6b73 100644
--- a/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c
+++ b/drivers/staging/rtl8723au/hal/rtl8723a_cmd.c
@@ -202,7 +202,7 @@
static void ConstructBeacon(struct rtw_adapter *padapter, u8 *pframe, u32 *pLength)
{
struct ieee80211_hdr *pwlanhdr;
- u16 *fctrl;
+ __le16 *fctrl;
u32 rate_len, pktlen;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -303,7 +303,7 @@
static void ConstructPSPoll(struct rtw_adapter *padapter, u8 *pframe, u32 *pLength)
{
struct ieee80211_hdr *pwlanhdr;
- u16 *fctrl;
+ __le16 *fctrl;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;
@@ -338,7 +338,7 @@
u8 bForcePowerSave)
{
struct ieee80211_hdr *pwlanhdr;
- u16 *fctrl;
+ __le16 *fctrl;
u32 pktlen;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct wlan_network *cur_network = &pmlmepriv->cur_network;
@@ -402,7 +402,7 @@
static void ConstructProbeRsp(struct rtw_adapter *padapter, u8 *pframe, u32 *pLength, u8 *StaAddr, bool bHideSSID)
{
struct ieee80211_hdr *pwlanhdr;
- u16 *fctrl;
+ __le16 *fctrl;
u8 *mac, *bssid;
u32 pktlen;
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
diff --git a/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c
index 14331e4..ca100dc 100644
--- a/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c
+++ b/drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c
@@ -262,7 +262,7 @@
u8 buf[MAX_BSSINFO_LEN], *pbuf;
size_t len;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
struct wireless_dev *wdev = padapter->rtw_wdev;
struct wiphy *wiphy = wdev->wiphy;
@@ -2332,7 +2332,7 @@
u8 *pmgmt_frame;
uint frame_len;
struct ieee80211_hdr *pwlanhdr;
- unsigned short *fctrl;
+ __le16 *fctrl;
u8 mgmt_buf[128] = { 0 };
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
struct mlme_ext_info *pmlmeinfo = &pmlmeext->mlmext_info;