1 The fix for CVE-2006-6332 in r1842 was not entirely correct. In
\r
2 encode_ie() the bound check did not consider that each byte from
\r
3 the IE causes two bytes to be written into buffer. That could
\r
4 lead to a kernel oops, but does not allow code injection. This is
\r
7 Due to the type of this problem it does not trigger another
\r
8 urgent security bugfix release. v0.9.3 is at the door anyway.
\r
10 Reported-by: Joachim Gleisner <jg@suse.de>
\r
12 Index: trunk/net80211/ieee80211_wireless.c
\r
13 ===================================================================
\r
14 --- trunk/net80211/ieee80211_wireless.c (revision 1846)
\r
15 +++ trunk/net80211/ieee80211_wireless.c (revision 1847)
\r
16 @@ -1566,8 +1566,8 @@
\r
17 bufsize -= leader_len;
\r
19 - if (bufsize < ielen)
\r
21 - for (i = 0; i < ielen && bufsize > 2; i++)
\r
22 + for (i = 0; i < ielen && bufsize > 2; i++) {
\r
23 p += sprintf(p, "%02x", ie[i]);
\r
26 return (i == ielen ? p - (u_int8_t *)buf : 0);
\r