mac80211: michael.c use get/put_unaligned helpers
PATCH 2/3 mac80211: michael.c use get/put_unaligned helpers
Signed-off-by Harvey Harrison <[email protected]>
--- net/mac80211/michael.c | 31 ++++++++----------------------- 1 files changed, 8 insertions(+), 23 deletions(-)
net/mac80211/michael.c +8 -23
@@ -27,35 +27,20 @@ static void michael_block(u32 val, u32 *l, u32 *r) *l += *r; } -static u32 michael_get16 (u8 *data) -{ -return le16_to_cpu (get_unaligned ((__le16 *)data)); -} - -static u32 michael_get32 (u8 *data) -{ -return le32_to_cpu (get_unaligned ((__le32 *)data)); -} - -static void michael_put32 (u32 val,u8 *data) -{ -put_unaligned (cpu_to_le32 (val), (__le32 *)data); -} -void michael_mic (u8 *key,u8 *da,u8 *sa,u8 priority,u8 *data,size_t data_len,u8 *mic) {u32 l, r, val;size_t block, blocks, left; - l =michael_get32 (key); - r =michael_get32 (key +4 ); + l =get_unaligned_le32 (key); + r =get_unaligned_le32 (key +4 );/* A pseudo header (DA, SA, Priority, 0, 0, 0) is used in Michael MIC * calculation, but it is _not_ transmitted */ -michael_block (michael_get32 (da), &l, &r); -michael_block (michael_get16 (da) | (michael_get16 (sa) <<16 ), &l, &r); -michael_block (michael_get32 (&sa[2 ]), &l, &r); +michael_block (get_unaligned_le32 (da), &l, &r); +michael_block (get_unaligned_le16 (da) | (get_unaligned_le16 (sa) <<16 ), &l, &r); +michael_block (get_unaligned_le32 (sa +2 ), &l, &r);michael_block (priority, &l, &r);/* Real data */
@@ -63,7 +48,7 @@ void michael_mic(u8 *key, u8 *da, u8 *sa, u8 priority, left = data_len %4 ;for (block =0 ; block < blocks; block++) -michael_block (michael_get32 (&data[block *4 ]), &l, &r); +michael_block (get_unaligned_le32 (data + (block *4 )), &l, &r);/* Partial block of 0..3 bytes and padding: 0x5a + 4..7 zeros to make * total length a multiple of 4. */
@@ -76,6 +61,6 @@ void michael_mic(u8 *key, u8 *da, u8 *sa, u8 priority,michael_block (val, &l, &r);michael_block (0 , &l, &r); -michael_put32 (l, mic); -michael_put32 (r, mic +4 ); +put_unaligned_le32 (l, mic); +put_unaligned_le32 (r, mic +4 ); }
Signature · 1 line
1.5.5.144.g3e42