From: Andy Green Date: Wed, 10 Oct 2007 02:46:33 +0000 (-0400) Subject: Add get_unaligned to ieee80211_get_radiotap_len X-Git-Tag: v2.6.22.11~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=774b4c5215a40f8971ca71470f3832e0ed53a41f;p=thirdparty%2Fkernel%2Fstable.git Add get_unaligned to ieee80211_get_radiotap_len patch dfe6e81deaa79c85086c0cc8d85b229e444ab97f in mainline. ieee80211_get_radiotap_len() tries to dereference radiotap length without taking care that it is completely unaligned and get_unaligned() is required. Signed-off-by: Andy Green Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c index 42725e1cf7d34..b9f25070c6bee 100644 --- a/net/mac80211/ieee80211.c +++ b/net/mac80211/ieee80211.c @@ -24,6 +24,7 @@ #include #include #include +#include #include "ieee80211_common.h" #include "ieee80211_i.h" @@ -338,7 +339,7 @@ static int ieee80211_get_radiotap_len(struct sk_buff *skb) struct ieee80211_radiotap_header *hdr = (struct ieee80211_radiotap_header *) skb->data; - return le16_to_cpu(hdr->it_len); + return le16_to_cpu(get_unaligned(&hdr->it_len)); } #ifdef CONFIG_MAC80211_LOWTX_FRAME_DUMP