From b6e9c354e3ce997eb8f47e0c0c3a1f8e59c2ba3e Mon Sep 17 00:00:00 2001 From: James Ketrenos Date: Tue, 13 Sep 2005 17:38:13 -0500 Subject: [PATCH] --- yaml --- r: 10227 b: refs/heads/master c: 7b1fa54020985fa4b154f9f5d2f04ba174c7f1a5 h: refs/heads/master i: 10225: aaf9c0fdf4a9723bd4a302116df4fce9ed07318f 10223: 0ff12e950af4ca3dd94133555cf5bbc88c48e81f v: v3 --- [refs] | 2 +- trunk/include/net/ieee80211.h | 5 ----- trunk/net/ieee80211/ieee80211_rx.c | 10 +++++----- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/[refs] b/[refs] index 83075707afd1..2fb4ea71da27 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 68e4e036b841d5fb23ae1ac51b1e40baf9d582bf +refs/heads/master: 7b1fa54020985fa4b154f9f5d2f04ba174c7f1a5 diff --git a/trunk/include/net/ieee80211.h b/trunk/include/net/ieee80211.h index 6394ae4bf17d..27374c27c408 100644 --- a/trunk/include/net/ieee80211.h +++ b/trunk/include/net/ieee80211.h @@ -505,11 +505,6 @@ enum ieee80211_mfie { MFIE_TYPE_GENERIC = 221, }; -struct ieee80211_info_element_hdr { - u8 id; - u8 len; -} __attribute__ ((packed)); - struct ieee80211_info_element { u8 id; u8 len; diff --git a/trunk/net/ieee80211/ieee80211_rx.c b/trunk/net/ieee80211/ieee80211_rx.c index cae55e5ccb2e..e0337c8fcde8 100644 --- a/trunk/net/ieee80211/ieee80211_rx.c +++ b/trunk/net/ieee80211/ieee80211_rx.c @@ -823,10 +823,10 @@ static inline int ieee80211_network_init(struct ieee80211_device *ieee, struct i network->rsn_ie_len = 0; info_element = beacon->info_element; - left = stats->len - ((void *)info_element - (void *)beacon); - while (left >= sizeof(struct ieee80211_info_element_hdr)) { - if (sizeof(struct ieee80211_info_element_hdr) + - info_element->len > left) { + left = stats->len - sizeof(*beacon); + while (left >= sizeof(struct ieee80211_info_element)) { + if (sizeof(struct ieee80211_info_element) + info_element->len > + left) { IEEE80211_DEBUG_SCAN ("SCAN: parse failed: info_element->len + 2 > left : info_element->len+2=%Zd left=%d.\n", info_element->len + @@ -967,7 +967,7 @@ static inline int ieee80211_network_init(struct ieee80211_device *ieee, struct i break; } - left -= sizeof(struct ieee80211_info_element_hdr) + + left -= sizeof(struct ieee80211_info_element) + info_element->len; info_element = (struct ieee80211_info_element *) &info_element->data[info_element->len];