Get rid of pointless wrapper around a simple kfree()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
We really don't need two layers of silly indirection to call this
function.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Pointer 'pwdev_priv' in function rtw_wdev_free() is unused - thus remove it.
Signed-off-by: Christian Engelmayer <cengelma@gmx.at>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The break and the "unknown++" are at the same indent level so my static
checker complains. The if statement should be indented more.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
For bizarre reason we have unused variables IOTPeer both in struct
sta_info and struct odm_sta_info.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
We don't need two copies of the same struct, it just leads to
pointless typecasts.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Remove unused add_enable_bitmap and candidate_tid_bitmap from struct
mlme_ext_info.
In addition we don't need to use CHKBIT when we know we are dealing
with a value in the range 0-15.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Since we only have one function for this, there is no point in keeping
the HAL silliness.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
rtw_do_join23a() is declared in rtw_ioctl_set.c so move the prototype
to it's correct place, and remove duplicate protoype from rtw_mlme.c
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Inline the parsing of status codes. Long term we should pass back the
proper status codes and get rid of the ugly _FAIL/_SUCCESS mess. This
is one small step in that direction.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This was just a silly wrapper around list_empty()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
No point in passing in the pointer to free_recv_queue, when we always
pass in the same value.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Finally with the last user converted, get rid of ugly vmalloc wrappers
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Fix a potential leak in the error path of function update_bcn_wps_ie().
Move the affected input verification to the beginning of the function so
that it may return directly without leaking already allocated memory.
Detected by Coverity - CID 1077718.
Signed-off-by: Christian Engelmayer <cengelma@gmx.at>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
No need to allocate GFP_ATOMIC when we don't need to.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The kernel has a great memory allocator, use it instead of hacking up
something in the driver.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This allows us to use GFP_KERNEL when calling from a work handler.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
We only really need to hold pmlmepriv->lock while calling
rtw_indicate_connect23a(). rtw_get_stainfo23a() and
rtw_alloc_stainfo23a() rely on pstapriv->sta_hash_lock and the non
WIFI_AP_STATE path relies on pmlmepvi->scanned_queue.lock, except we
need to used clr_fwstate() instead of _clr_fwstate_().
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
One set of custom error codes for the driver should more than
suffice. This allows us to get rid of odm_types.h as well.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Use the knowledge we already have from parsing the TODS/FROMDS bits in
hdr->frame_control to obtain the bssid.
Note that get_hdr_bssid() would never return NULL as handling 4
combinations of a 2 bit word leaves little space for falling through
to the 'default' value.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This is only used in one place - do the work there properly.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Having struct qos_priv containing a single integer, and carrying a
dedicated header file for it, is just plain silly. Move the integer
into struct mlme_priv, which is the only place qos_priv was used
anyway, and get rid of the header file.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This avoids an ugly cast in mlme_evt_hdl23a()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Every other place uses C2HEvent_Header() for events. Given the struct
is endian dependant, use it here too to retrieve data from the parm
buffer.
Note the length field is not set/read in le order - question is
whether it's simply an opaque field?
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Split the old work handler into a workqueue for processing
usb_read_interrupt_complete() events that require more than ust
clearing the event, and leave the old handler to just handle event
clearing.
This means we can get rid of the hacks with magic pointers to
determine what actions needs to be taken in the work handler, and
as an extra bonus obsoletes the bizarre cbuf code.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This function no longer does anything, so get rid of it.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
commit 0348dc74f6 ensured that the parm
buffer passed to the cmd handlers is not being over-written. Hence
there is no need to make a copy of the parm buffer just to pass it
into the cmd handler.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
_rtw_free_network23a() and _rtw_free_network23a_nolock23a() are now
identical - one copy should do.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
All callers get here by searching for the WPA OUI first, so no point
checking for it once we get here.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
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>
This should make sparse happier.
Reported-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>
Lots of hoops for a dummy function which was never called
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
struct intf_hdl is now purely a wrapper around struct _io_ops, so we
can get rid of it in the next patch.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This lowers the dependency on struct intf_hdl so we can start getting
rid of if.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
No point wrapping struct intf_hdl into struct io_priv just for the
sake of it.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The following sparse warnings are fixed:
drivers/staging/rtl8723au/core/rtw_cmd.c:1211:6: warning: symbol 'dynamic_chk_wk_hdl' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_cmd.c:1238:6: warning: symbol 'lps_ctrl_wk_hdl' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_cmd.c:1812:6: warning: symbol 'rtw_getrttbl_cmd_cmdrsp_callback' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_mlme.c:364:6: warning: symbol 'rtw_free_network' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_mlme.c:373:6: warning: symbol 'rtw_free_network_nolock' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_mlme.c:631:6: warning: symbol 'rtw_add_network' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_mlme.c:644:5: warning: symbol 'rtw_is_desired_network' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2246:5: warning: symbol 'DoReserved23a' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:5549:6: warning: symbol 'linked23a_rx_sig_stren_disp' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_pwrctrl.c:272:4: warning: symbol 'PS_RDY_CHECK' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_recv.c:1937:5: warning: symbol 'enqueue_reorder_recvframe23a' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_sta_mgt.c:24:6: warning: symbol '_rtw_init_stainfo' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_sta_mgt.c:112:6: warning: symbol 'rtw_mfree_all_stainfo' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_sta_mgt.c:127:6: warning: symbol 'rtw_mfree_sta_priv_lock' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_wlan_util.c:143:15: warning: symbol 'ratetbl_val_2wifirate' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_wlan_util.c:188:5: warning: symbol 'is_basicrate' was not declared. Should it be static?
drivers/staging/rtl8723au/core/rtw_wlan_util.c:206:14: warning: symbol 'ratetbl2rateset' was not declared. Should it be static?
Three of the above routines were not used and were deleted.
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>
There are several macros used to get and set portions of the RX and TX descriptor
information that need to be converted to be endian correct. The following sparse
warnings are fixed:
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2477:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2477:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2479:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2479:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2479:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2479:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2479:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2479:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2649:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2649:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2651:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2651:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2651:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2651:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2651:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2651:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2863:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2863:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2865:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2865:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2865:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2865:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2865:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2865:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2996:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2996:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2998:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2998:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2998:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2998:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2998:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:2998:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3105:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3105:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3105:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3164:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3164:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3167:17: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3167:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3167:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3167:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3167:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3167:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3313:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3313:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3315:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3315:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3315:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3315:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3315:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3315:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3581:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3581:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3581:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3583:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3583:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3583:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3586:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3586:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3586:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3592:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3592:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3594:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3594:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3594:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3594:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3594:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3594:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3702:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3702:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3702:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3704:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3704:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3704:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3707:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3707:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3707:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3711:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3711:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3711:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3713:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3713:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3713:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3715:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3715:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3715:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3721:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3721:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3723:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3723:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3723:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3723:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3723:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3723:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3827:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3827:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3829:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3829:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3829:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3829:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3829:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3829:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3938:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3938:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3940:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3940:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3940:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3940:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3940:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:3940:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4010:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4010:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4012:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4012:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4012:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4012:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4012:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4012:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4199:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4199:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4201:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4201:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4201:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4201:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4201:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4201:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4509:28: warning: too many warnings
drivers/staging/rtl8723au/core/rtw_xmit.c:940:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_xmit.c:940:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:940:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:940:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:940:9: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:940:9: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:946:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:946:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:946:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:957:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:957:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:957:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:980:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:980:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:980:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:982:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:982:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:982:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:986:33: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:986:33: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:986:33: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:987:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:987:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:987:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:988:25: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:988:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:988:25: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:997:25: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:997:25: warning: cast to restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:1176:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/core/rtw_xmit.c:1176:17: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:1176:17: right side has type restricted __le16
drivers/staging/rtl8723au/core/rtw_xmit.c:1260:25: warning: invalid assignment: &=
drivers/staging/rtl8723au/core/rtw_xmit.c:1260:25: left side has type unsigned short
drivers/staging/rtl8723au/core/rtw_xmit.c:1260:25: right side has type fouled restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:224:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:224:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:226:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:226:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:226:9: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:226:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:226:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:226:9: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:316:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:316:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:316:9: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:317:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:317:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:317:9: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:317:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:317:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:317:9: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:320:9: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:320:9: expected unsigned short [unsigned] [short] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:320:9: got restricted __le16 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:354:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:354:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:354:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:358:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:358:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:358:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:366:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:366:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:366:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:382:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:382:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:387:17: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:387:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:387:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:387:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:387:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:387:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:390:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:390:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:390:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:391:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:391:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:391:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:395:17: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:395:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:395:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:395:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:395:17: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:395:17: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:426:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:426:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:427:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:427:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:427:9: right side has type restricted __le16
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:427:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:427:9: left side has type unsigned short
drivers/staging/rtl8723au/hal/rtl8723a_cmd.c:427:9: right side has type restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:319:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:319:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:323:17: warning: invalid assignment: &=
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:323:17: left side has type unsigned short
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:323:17: right side has type restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:323:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:323:17: left side has type unsigned short
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:323:17: right side has type restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:326:17: warning: invalid assignment: &=
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:326:17: left side has type unsigned short
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:326:17: right side has type restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:326:17: warning: invalid assignment: |=
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:326:17: left side has type unsigned short
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:326:17: right side has type restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2368:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2368:9: warning: cast to restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2370:9: warning: invalid assignment: &=
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2370:9: left side has type unsigned short
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2370:9: right side has type restricted __le16
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2370:9: warning: invalid assignment: |=
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2370:9: left side has type unsigned short
drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c:2370:9: right side has type restricted __le16
The following new warnings were temporarily added:
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4509:28: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4509:28: expected unsigned short [unsigned] [assigned] [usertype] capab_info
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4509:28: got restricted __le16 [usertype] capab_info
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:4612:17: warning: cast to restricted __le32
drivers/staging/rtl8723au/core/rtw_mlme_ext.c:5549:6: warning: symbol 'linked23a_rx_sig_stren_disp' was not declared. Should it be static?
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>
All descriptors are __le32, not unsigned int. The following sparse warnings are fixed:
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2626:24: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2626:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2626:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2632:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2632:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2632:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2873:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2873:22: expected unsigned int [unsigned] txdw0
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2873:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2874:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2874:22: expected unsigned int [unsigned] txdw1
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2874:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2875:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2875:22: expected unsigned int [unsigned] txdw2
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2875:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2876:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2876:22: expected unsigned int [unsigned] txdw3
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2876:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2877:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2877:22: expected unsigned int [unsigned] txdw4
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2877:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2878:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2878:22: expected unsigned int [unsigned] txdw5
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2878:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2879:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2879:22: expected unsigned int [unsigned] txdw6
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2879:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2880:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2880:22: expected unsigned int [unsigned] txdw7
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2880:22: got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2903:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2903:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2903:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2906:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2906:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2906:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2910:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2910:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2910:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2914:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2914:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2914:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2919:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2919:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2919:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2922:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2922:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2922:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2924:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2924:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2924:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2928:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2928:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2928:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2932:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2932:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2932:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:145:24: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:146:24: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:147:24: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:148:24: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:149:24: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:150:24: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:77:32: warning: invalid assignment: &=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:77:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:77:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:82:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:82:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:82:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:92:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:92:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:92:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:97:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:97:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:97:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c💯40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c💯40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c💯40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:183:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:183:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:183:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:186:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:186:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:186:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:188:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:188:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:188:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:193:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:193:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:193:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:195:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:195:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:195:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:200:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:200:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:200:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:204:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:204:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:204:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:214:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:214:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:214:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:215:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:215:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:215:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:218:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:218:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:218:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:224:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:224:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:224:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:226:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:226:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:226:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:229:48: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:229:48: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:229:48: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:231:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:231:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:231:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:235:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:235:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:235:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:238:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:238:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:238:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:240:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:240:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:240:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:245:40: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:245:40: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:245:40: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:248:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:248:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:248:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:251:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:251:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:251:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:254:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:254:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:254:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:255:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:255:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:255:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:257:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:257:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:257:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:264:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:264:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:264:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:266:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:266:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:266:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:271:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:271:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:271:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:274:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:274:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:274:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:277:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:277:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:277:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:288:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:288:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:288:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:290:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:290:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:290:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:294:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:294:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:294:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:295:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:295:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:295:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:296:24: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:296:24: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:296:24: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:299:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:299:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:299:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:306:32: warning: invalid assignment: |=
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:306:32: left side has type unsigned int
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:306:32: right side has type restricted __le32
drivers/staging/rtl8723au/hal/usb_ops_linux.c:473:20: warning: cast to restricted __le32
drivers/staging/rtl8723au/hal/usb_ops_linux.c:590:36: warning: cast to restricted __le32
The following new warnings are temporarily added:
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2873:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2874:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2875:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2876:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2877:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2878:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2879:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723a_hal_init.c:2880:24: warning: cast from restricted __le32
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:145:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:145:22: expected restricted __le32 [usertype] rxdw0
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:145:22: got unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:146:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:146:22: expected restricted __le32 [usertype] rxdw1
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:146:22: got unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:147:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:147:22: expected restricted __le32 [usertype] rxdw2
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:147:22: got unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:148:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:148:22: expected restricted __le32 [usertype] rxdw3
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:148:22: got unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:149:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:149:22: expected restricted __le32 [usertype] rxdw4
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:149:22: got unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:150:22: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:150:22: expected restricted __le32 [usertype] rxdw5
drivers/staging/rtl8723au/hal/rtl8723au_recv.c:150:22: got unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:211:51: warning: incorrect type in argument 2 (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:211:51: expected unsigned int [usertype] *pdw
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:211:51: got restricted __le32 *<noident>
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:212:51: warning: incorrect type in argument 2 (different base types)
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:212:51: expected unsigned int [usertype] *pdw
drivers/staging/rtl8723au/hal/rtl8723au_xmit.c:212:51: got restricted __le32 *<noident>
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>
Sparse reports
drivers/staging/rtl8723au/os_dep/osdep_service.c:24:20: error: Bad character constant
drivers/staging/rtl8723au/os_dep/osdep_service.c:25:0: error: Bad character constant
The constant in question is never used.
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>
Rewrite the old thread based code to use a workqueue instead. This
removes a pile of complexity, locks and queues and eliminates problem
that cmd handling could have been killed from userspace.
This was suggested by Tejun Heo - thanks!
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
It is safe to use GFP_KERNEL in a workqueue handler, and check the
return value. If the malloc fails, skip and try again.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Making len unsigned int fixes a warning caused by smatch getting
confused that len could be negative.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Fix smatch warning from advancing array index before reading out the
value of the array.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Make length an unsigned int. This should avoid Smatch warning that
'length' can go negative.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Commit da290c5461 inverted the check of
the return value when converting to use cfg80211_find_ie().
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Check kmalloc() return before dereferencing bssid in
rtw_check_bcn_info23a() and use the correct size to copy
rtw_basic_rate_ofdm in update_bmc_sta_support_rate23a()
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This resolves a bunch of merge errors with other fixes that are already
in Linus's tree.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8723au/core/rtw_wlan_util.c: In function ‘WMMOnAssocRsp23a’:
drivers/staging/rtl8723au/core/rtw_wlan_util.c:684: warning: ‘change_inx’ may be used uninitialized in this function
Depending on the uninitialized data on the stack, the array may not be
sorted correctly.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Add bounds checking to not allow WFD Information Elements larger than
128, and make sure we use the correct buffer size MAX_WFD_IE_LEN
instea of hardcoding the size.
This also simplifies rtw_get_wfd_ie() by using the cfg80211
infrastructure.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Simple read variable from a struct function, having it as an external
function is just silly.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
No point calling a function to NULL a pointer that was just cleared in
the malloc call.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Shorten variable names allowing for fewer broken lines due to the
large number of indents.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Switch to using struct ieee80211_mgmt to obtain offsets. Again a
bizarre +4 offset was applied for the IE scan which doesn't make
sense, since this offset wasn't applied for the auth struct elements.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Use 80211_mgmt to determine offsets within the received frame. This
also removes a suspicious offset adjustment:
offset = ieee80211_has_protected(hdr->frame_control) ? 4: 0;
which didn't make any sense, since it was only applied to determining
the auth, sequence number, and status, but wasn't applied to the
location of the IEs.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This is only called from rtw_mlme_ext.c, so move it that and declare
it static.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Clean up and simplify update_TSF() using proper Linux functions and
move it to rtw_mlme_ext.c which is the only user of it.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Clean up the excessive if() levels at the end, and use struct
ieee80211_mgmt to calculate pointers passed on to check_assoc_AP23a()
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This function was extremely buggy calling kmalloc(GFP_KERNEL) while
holding a spin lock and then potentially overflowing the buffer it had
allocated.
Since the generated output wasn't used for anything, simply rip the
whole thing out.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
These are duplicated from the kernel headers and not used anymore
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This removes the double content tracking of data from IE elements. The
relevant code to validate IEs is moved to rtw_mlme_ext.c as this is
the only place where it is used.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Use cfg80211 interface to search for HT capabilities.
This was the last user of struct rtw_ieee802_11_elems, which can now
be removed.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This reduces the dependency of rtw_ieee802_11_parse_elems23a() which
is only used in this function. Follow-on patches will remove the
remaining dependencies and get rid of the function.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Remove excessive brackets and some general cleanups
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Use cfg80211_find_ie() and cfg80211_find_vendor_ie() rather than own
hacks.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
There is no point doing a double check of the IE, either we found an
WLAN_EID_SSID or we didn't.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Clean up the code by passing a struct ieee80211_mgmt pointer instead
of a raw frame pointer. In addition check we receive a beacon frame,
anything else here is an error.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
We always receive a struct ieee80211_mgmt frame here, using just
ieee80211_hdr doesn't make sense.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
In addition, make them all static and move the prototypes to
rtw_mlme_ext.c.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This converts it to use struct ieee80211_mgmt and cfg80211_find_ie().
In addition fix a potential buffer overrun in the last loop searching
through list WLAN_EID_VENDOR_SPECIFIC elements.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>