Increment the pointer rather than its value. These appear to be logic errors. Thanks to Dan Carpenter for the first hunk of this change. Cc: Dan Carpenter <error27@xxxxxxxxx> Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx> Index: linux-2.6/drivers/staging/otus/80211core/ctkip.c =================================================================== --- linux-2.6.orig/drivers/staging/otus/80211core/ctkip.c 2010-01-12 11:45:55.000000000 +1100 +++ linux-2.6/drivers/staging/otus/80211core/ctkip.c 2010-01-12 11:46:28.000000000 +1100 @@ -255,7 +255,8 @@ void zfTkipInit(u8_t* key, u8_t* ta, str zfMemoryCopy(pSeed->ta, ta, 6); zfMemoryCopy(pSeed->tk, key, 16); - iv16 = *initIv++; + iv16 = *initIv; + initIv++; iv16 += *initIv<<8; initIv++; @@ -264,7 +265,7 @@ void zfTkipInit(u8_t* key, u8_t* ta, str for(i=0; i<4; i++) // initiv is little endian { iv32 += *initIv<<(i*8); - *initIv++; + initIv++; } pSeed->iv32 = iv32+1; // Force Recalculating on Tkip Phase1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel