diff options
author | Raja Mani <rmani@qca.qualcomm.com> | 2012-09-21 11:38:55 +0200 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2012-10-24 10:49:50 +0200 |
commit | 363f149ce37bea91069177eab691111b242bfe73 (patch) | |
tree | 1cfe860c39ed6bf66ae050097d41d2f0dfc7ebba /drivers/net/wireless/ath/ath6kl/txrx.c | |
parent | ath6kl: Check for valid rate table index (diff) | |
download | linux-363f149ce37bea91069177eab691111b242bfe73.tar.xz linux-363f149ce37bea91069177eab691111b242bfe73.zip |
ath6kl: Check for valid endpoint ID values in ath6kl_control_tx()
It's safe to check endpoint id values before it get
really used. Found this on code review.
Signed-off-by: Raja Mani <rmani@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath6kl/txrx.c')
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/txrx.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/txrx.c b/drivers/net/wireless/ath/ath6kl/txrx.c index efee590a234a..cf4380d573c4 100644 --- a/drivers/net/wireless/ath/ath6kl/txrx.c +++ b/drivers/net/wireless/ath/ath6kl/txrx.c @@ -293,6 +293,12 @@ int ath6kl_control_tx(void *devt, struct sk_buff *skb, return -EACCES; } + if (WARN_ON_ONCE(eid == ENDPOINT_UNUSED || + eid >= ENDPOINT_MAX)) { + status = -EINVAL; + goto fail_ctrl_tx; + } + spin_lock_bh(&ar->lock); ath6kl_dbg(ATH6KL_DBG_WLAN_TX, |