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

airo: Fix array bounds warning when moving packet payload.

drivers/net/wireless/airo.c: In function ‘encapsulate’:
drivers/net/wireless/airo.c:1421:15: warning: array subscript is above array bounds [-Warray-bounds]
drivers/net/wireless/airo.c: In function ‘decapsulate’:
drivers/net/wireless/airo.c:1509:16: warning: array subscript is above array bounds [-Warray-bounds]

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

+2 -2
+2 -2
drivers/net/wireless/airo.c
··· 1418 1418 emmh32_update(&context->seed,frame->da,ETH_ALEN * 2); // DA,SA 1419 1419 emmh32_update(&context->seed,(u8*)&mic->typelen,10); // Type/Length and Snap 1420 1420 emmh32_update(&context->seed,(u8*)&mic->seq,sizeof(mic->seq)); //SEQ 1421 - emmh32_update(&context->seed,frame->da + ETH_ALEN * 2,payLen); //payload 1421 + emmh32_update(&context->seed,(u8*)(frame + 1),payLen); //payload 1422 1422 emmh32_final(&context->seed, (u8*)&mic->mic); 1423 1423 1424 1424 /* New Type/length ?????????? */ ··· 1506 1506 emmh32_update(&context->seed, eth->da, ETH_ALEN*2); 1507 1507 emmh32_update(&context->seed, (u8 *)&mic->typelen, sizeof(mic->typelen)+sizeof(mic->u.snap)); 1508 1508 emmh32_update(&context->seed, (u8 *)&mic->seq,sizeof(mic->seq)); 1509 - emmh32_update(&context->seed, eth->da + ETH_ALEN*2,payLen); 1509 + emmh32_update(&context->seed, (u8 *)(eth + 1),payLen); 1510 1510 //Calculate MIC 1511 1511 emmh32_final(&context->seed, digest); 1512 1512