Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ath6kl: Stop using NLA_PUT*().

These macros contain a hidden goto, and are thus extremely error
prone and make code hard to audit.

Signed-off-by: David S. Miller <davem@davemloft.net>

+3 -2
+3 -2
drivers/net/wireless/ath/ath6kl/testmode.c
··· 55 55 ath6kl_warn("failed to allocate testmode rx skb!\n"); 56 56 return; 57 57 } 58 - NLA_PUT_U32(skb, ATH6KL_TM_ATTR_CMD, ATH6KL_TM_CMD_TCMD); 59 - NLA_PUT(skb, ATH6KL_TM_ATTR_DATA, buf_len, buf); 58 + if (nla_put_u32(skb, ATH6KL_TM_ATTR_CMD, ATH6KL_TM_CMD_TCMD) || 59 + nla_put(skb, ATH6KL_TM_ATTR_DATA, buf_len, buf)) 60 + goto nla_put_failure; 60 61 cfg80211_testmode_event(skb, GFP_KERNEL); 61 62 return; 62 63