Commit b4c0e72e authored by David S. Miller's avatar David S. Miller

ray_cs: Fix array bounds warnings.

rx_msg is defined to have a 1 entry array at the end, so gcc warns:

drivers/net/wireless/ray_cs.c: In function ‘rx_authenticate’:
drivers/net/wireless/ray_cs.c:2436:3: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2436:3: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2436:3: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2436:3: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2436:3: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2439:15: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2452:16: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2453:18: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/ray_cs.c:2453:32: warning: array subscript is above array bounds [-Warray-bounds]

Use a zero length array and rename to "ray_rx_msg" to make sure we hit all
of the necessary cases.
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f4739840
...@@ -2426,7 +2426,7 @@ static void rx_authenticate(ray_dev_t *local, struct rcs __iomem *prcs, ...@@ -2426,7 +2426,7 @@ static void rx_authenticate(ray_dev_t *local, struct rcs __iomem *prcs,
unsigned int pkt_addr, int rx_len) unsigned int pkt_addr, int rx_len)
{ {
UCHAR buff[256]; UCHAR buff[256];
struct rx_msg *msg = (struct rx_msg *)buff; struct ray_rx_msg *msg = (struct ray_rx_msg *) buff;
del_timer(&local->timer); del_timer(&local->timer);
...@@ -2513,7 +2513,7 @@ static void rx_deauthenticate(ray_dev_t *local, struct rcs __iomem *prcs, ...@@ -2513,7 +2513,7 @@ static void rx_deauthenticate(ray_dev_t *local, struct rcs __iomem *prcs,
unsigned int pkt_addr, int rx_len) unsigned int pkt_addr, int rx_len)
{ {
/* UCHAR buff[256]; /* UCHAR buff[256];
struct rx_msg *msg = (struct rx_msg *)buff; struct ray_rx_msg *msg = (struct ray_rx_msg *) buff;
*/ */
pr_debug("Deauthentication frame received\n"); pr_debug("Deauthentication frame received\n");
local->authentication_state = UNAUTHENTICATED; local->authentication_state = UNAUTHENTICATED;
......
...@@ -566,9 +566,9 @@ struct phy_header { ...@@ -566,9 +566,9 @@ struct phy_header {
UCHAR hdr_3; UCHAR hdr_3;
UCHAR hdr_4; UCHAR hdr_4;
}; };
struct rx_msg { struct ray_rx_msg {
struct mac_header mac; struct mac_header mac;
UCHAR var[1]; UCHAR var[0];
}; };
struct tx_msg { struct tx_msg {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment