mirror of https://github.com/hak5/openwrt-owl.git
update madwifi to latest trunk (refcount and hal-0.9.30.13 got merged) and include a security fix that was merged in 0.9.3.1
SVN-Revision: 7309owl
parent
014af49855
commit
34f3b786b5
|
@ -10,13 +10,13 @@ include $(TOPDIR)/rules.mk
|
|||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=madwifi
|
||||
PKG_VERSION:=r2351-20070519
|
||||
PKG_BRANCH:=madwifi-hal-0.9.30.13
|
||||
PKG_VERSION:=r2362-20070522
|
||||
PKG_BRANCH:=madwifi-ng
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_BRANCH)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=http://snapshots.madwifi.org/$(PKG_BRANCH)
|
||||
PKG_MD5SUM:=215b6c66eb1a3c4bcd947f358ade823f
|
||||
PKG_MD5SUM:=7a7783ecf6596089afc4aeebdffb397b
|
||||
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_BRANCH)-$(PKG_VERSION)
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,49 @@
|
|||
diff -ur madwifi.old/net80211/ieee80211_input.c madwifi.dev/net80211/ieee80211_input.c
|
||||
--- madwifi.old/net80211/ieee80211_input.c 2007-05-21 17:53:39.000000000 +0200
|
||||
+++ madwifi.dev/net80211/ieee80211_input.c 2007-05-23 16:50:21.097957392 +0200
|
||||
@@ -695,13 +695,31 @@
|
||||
|
||||
/* NB: assumes linear (i.e., non-fragmented) skb */
|
||||
|
||||
+ /* check length > header */
|
||||
+ if (skb->len < sizeof(struct ether_header) + LLC_SNAPFRAMELEN
|
||||
+ + roundup(sizeof(struct athl2p_tunnel_hdr) - 2, 4) + 2) {
|
||||
+ IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT,
|
||||
+ ni->ni_macaddr, "data", "%s", "decap error");
|
||||
+ vap->iv_stats.is_rx_decap++;
|
||||
+ IEEE80211_NODE_STAT(ni, rx_decap);
|
||||
+ goto err;
|
||||
+ }
|
||||
+
|
||||
/* get to the tunneled headers */
|
||||
ath_hdr = (struct athl2p_tunnel_hdr *)
|
||||
skb_pull(skb, sizeof(struct ether_header) + LLC_SNAPFRAMELEN);
|
||||
- /* ignore invalid frames */
|
||||
- if(ath_hdr == NULL)
|
||||
+ eh_tmp = (struct ether_header *)
|
||||
+ skb_pull(skb, roundup(sizeof(struct athl2p_tunnel_hdr) - 2, 4) + 2);
|
||||
+ /* sanity check for malformed 802.3 length */
|
||||
+ frame_len = ntohs(eh_tmp->ether_type);
|
||||
+ if (skb->len < roundup(sizeof(struct ether_header) + frame_len, 4)) {
|
||||
+ IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT,
|
||||
+ ni->ni_macaddr, "data", "%s", "decap error");
|
||||
+ vap->iv_stats.is_rx_decap++;
|
||||
+ IEEE80211_NODE_STAT(ni, rx_decap);
|
||||
goto err;
|
||||
-
|
||||
+ }
|
||||
+
|
||||
/* only implementing FF now. drop all others. */
|
||||
if (ath_hdr->proto != ATH_L2TUNNEL_PROTO_FF) {
|
||||
IEEE80211_DISCARD_MAC(vap,
|
||||
@@ -714,10 +732,6 @@
|
||||
}
|
||||
vap->iv_stats.is_rx_ffcnt++;
|
||||
|
||||
- /* move past the tunneled header, with alignment */
|
||||
- skb_pull(skb, roundup(sizeof(struct athl2p_tunnel_hdr) - 2, 4) + 2);
|
||||
- eh_tmp = (struct ether_header *)skb->data;
|
||||
-
|
||||
/* ether_type must be length as FF frames are always LLC/SNAP encap'd */
|
||||
frame_len = ntohs(eh_tmp->ether_type);
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
diff -urN madwifi-ng-refcount-r2313-20070505.old/ath/if_ath.c madwifi-ng-refcount-r2313-20070505.dev/ath/if_ath.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/ath/if_ath.c 2007-05-13 18:17:56.449987336 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/ath/if_ath.c 2007-05-13 18:17:56.457986120 +0200
|
||||
diff -ur madwifi.old/ath/if_ath.c madwifi.dev/ath/if_ath.c
|
||||
--- madwifi.old/ath/if_ath.c 2007-05-23 16:46:50.748935304 +0200
|
||||
+++ madwifi.dev/ath/if_ath.c 2007-05-23 16:47:03.275031048 +0200
|
||||
@@ -75,7 +75,7 @@
|
||||
#include <net80211/if_llc.h>
|
||||
#endif
|
||||
|
@ -10,7 +10,7 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/ath/if_ath.c madwifi-ng-refcoun
|
|||
|
||||
#include "net80211/if_athproto.h"
|
||||
#include "if_athvar.h"
|
||||
@@ -359,7 +359,7 @@
|
||||
@@ -356,7 +356,7 @@
|
||||
ath_keyprint(sc, __func__, ix, hk, mac); \
|
||||
} while (0)
|
||||
#else /* defined(AR_DEBUG) */
|
||||
|
@ -19,9 +19,9 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/ath/if_ath.c madwifi-ng-refcoun
|
|||
#define DPRINTF(sc, _m, _fmt, ...)
|
||||
#define KEYPRINTF(sc, k, ix, mac)
|
||||
#endif /* defined(AR_DEBUG) */
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/amrr/amrr.c madwifi-ng-refcount-r2313-20070505.dev/ath_rate/amrr/amrr.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/ath_rate/amrr/amrr.c 2007-04-09 23:08:06.000000000 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/ath_rate/amrr/amrr.c 2007-05-13 18:17:56.457986120 +0200
|
||||
diff -ur madwifi.old/ath_rate/amrr/amrr.c madwifi.dev/ath_rate/amrr/amrr.c
|
||||
--- madwifi.old/ath_rate/amrr/amrr.c 2007-05-21 19:33:26.000000000 +0200
|
||||
+++ madwifi.dev/ath_rate/amrr/amrr.c 2007-05-23 16:47:03.276030896 +0200
|
||||
@@ -69,7 +69,7 @@
|
||||
|
||||
#include "amrr.h"
|
||||
|
@ -31,9 +31,9 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/amrr/amrr.c madwifi-ng
|
|||
#ifdef AMRR_DEBUG
|
||||
#define DPRINTF(sc, _fmt, ...) do { \
|
||||
if (sc->sc_debug & 0x10) \
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/minstrel/minstrel.c madwifi-ng-refcount-r2313-20070505.dev/ath_rate/minstrel/minstrel.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/ath_rate/minstrel/minstrel.c 2007-05-13 18:17:55.605115776 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/ath_rate/minstrel/minstrel.c 2007-05-13 18:17:56.458985968 +0200
|
||||
diff -ur madwifi.old/ath_rate/minstrel/minstrel.c madwifi.dev/ath_rate/minstrel/minstrel.c
|
||||
--- madwifi.old/ath_rate/minstrel/minstrel.c 2007-05-23 16:46:50.731937888 +0200
|
||||
+++ madwifi.dev/ath_rate/minstrel/minstrel.c 2007-05-23 16:47:03.276030896 +0200
|
||||
@@ -116,7 +116,7 @@
|
||||
|
||||
#include "minstrel.h"
|
||||
|
@ -43,9 +43,9 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/minstrel/minstrel.c ma
|
|||
#ifdef MINSTREL_DEBUG
|
||||
enum {
|
||||
ATH_DEBUG_RATE = 0x00000010 /* rate control */
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/onoe/onoe.c madwifi-ng-refcount-r2313-20070505.dev/ath_rate/onoe/onoe.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/ath_rate/onoe/onoe.c 2007-04-09 23:08:06.000000000 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/ath_rate/onoe/onoe.c 2007-05-13 18:17:56.458985968 +0200
|
||||
diff -ur madwifi.old/ath_rate/onoe/onoe.c madwifi.dev/ath_rate/onoe/onoe.c
|
||||
--- madwifi.old/ath_rate/onoe/onoe.c 2007-05-21 19:33:26.000000000 +0200
|
||||
+++ madwifi.dev/ath_rate/onoe/onoe.c 2007-05-23 16:47:03.312025424 +0200
|
||||
@@ -65,7 +65,7 @@
|
||||
|
||||
#include "onoe.h"
|
||||
|
@ -55,9 +55,9 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/onoe/onoe.c madwifi-ng
|
|||
#ifdef ONOE_DEBUG
|
||||
enum {
|
||||
ATH_DEBUG_RATE = 0x00000010, /* rate control */
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/sample/sample.c madwifi-ng-refcount-r2313-20070505.dev/ath_rate/sample/sample.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/ath_rate/sample/sample.c 2007-04-09 23:08:06.000000000 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/ath_rate/sample/sample.c 2007-05-13 18:17:56.459985816 +0200
|
||||
diff -ur madwifi.old/ath_rate/sample/sample.c madwifi.dev/ath_rate/sample/sample.c
|
||||
--- madwifi.old/ath_rate/sample/sample.c 2007-05-21 19:33:26.000000000 +0200
|
||||
+++ madwifi.dev/ath_rate/sample/sample.c 2007-05-23 16:47:03.346020256 +0200
|
||||
@@ -67,7 +67,7 @@
|
||||
|
||||
#include "sample.h"
|
||||
|
@ -66,10 +66,10 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/ath_rate/sample/sample.c madwif
|
|||
+#undef SAMPLE_DEBUG
|
||||
#ifdef SAMPLE_DEBUG
|
||||
enum {
|
||||
ATH_DEBUG_RATE = 0x00000010 /* rate control */
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_proto.c madwifi-ng-refcount-r2313-20070505.dev/net80211/ieee80211_proto.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_proto.c 2007-02-01 21:49:37.000000000 +0100
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/net80211/ieee80211_proto.c 2007-05-13 18:17:56.460985664 +0200
|
||||
ATH_DEBUG_NODE = 0x00080000, /* node management */
|
||||
diff -ur madwifi.old/net80211/ieee80211_proto.c madwifi.dev/net80211/ieee80211_proto.c
|
||||
--- madwifi.old/net80211/ieee80211_proto.c 2007-05-21 17:53:39.000000000 +0200
|
||||
+++ madwifi.dev/net80211/ieee80211_proto.c 2007-05-23 16:47:03.347020104 +0200
|
||||
@@ -312,6 +312,7 @@
|
||||
}
|
||||
EXPORT_SYMBOL(ieee80211_print_essid);
|
||||
|
@ -86,9 +86,9 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_proto.c madw
|
|||
|
||||
int
|
||||
ieee80211_fix_rate(struct ieee80211_node *ni, int flags)
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_proto.h madwifi-ng-refcount-r2313-20070505.dev/net80211/ieee80211_proto.h
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_proto.h 2007-01-30 05:01:29.000000000 +0100
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/net80211/ieee80211_proto.h 2007-05-13 18:17:56.460985664 +0200
|
||||
diff -ur madwifi.old/net80211/ieee80211_proto.h madwifi.dev/net80211/ieee80211_proto.h
|
||||
--- madwifi.old/net80211/ieee80211_proto.h 2007-01-30 05:01:29.000000000 +0100
|
||||
+++ madwifi.dev/net80211/ieee80211_proto.h 2007-05-23 16:47:03.347020104 +0200
|
||||
@@ -247,7 +247,11 @@
|
||||
#endif
|
||||
int ieee80211_new_state(struct ieee80211vap *, enum ieee80211_state, int);
|
||||
|
@ -101,21 +101,23 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_proto.h madw
|
|||
struct sk_buff *ieee80211_getcfframe(struct ieee80211vap *, int);
|
||||
|
||||
/*
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_var.h madwifi-ng-refcount-r2313-20070505.dev/net80211/ieee80211_var.h
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/net80211/ieee80211_var.h 2007-05-13 18:17:56.107039472 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/net80211/ieee80211_var.h 2007-05-13 18:17:56.461985512 +0200
|
||||
@@ -37,7 +37,7 @@
|
||||
/*
|
||||
* Definitions for IEEE 802.11 drivers.
|
||||
*/
|
||||
-#define IEEE80211_DEBUG
|
||||
+#undef IEEE80211_DEBUG
|
||||
#undef IEEE80211_DEBUG_REFCNT /* node refcnt stuff */
|
||||
diff -ur madwifi.old/net80211/ieee80211_var.h madwifi.dev/net80211/ieee80211_var.h
|
||||
--- madwifi.old/net80211/ieee80211_var.h 2007-05-21 19:33:26.000000000 +0200
|
||||
+++ madwifi.dev/net80211/ieee80211_var.h 2007-05-23 16:47:19.427575488 +0200
|
||||
@@ -35,8 +35,8 @@
|
||||
#ifndef _NET80211_IEEE80211_VAR_H_
|
||||
#define _NET80211_IEEE80211_VAR_H_
|
||||
|
||||
-#define IEEE80211_DEBUG
|
||||
-#define IEEE80211_DEBUG_REFCNT /* Node reference count debugging */
|
||||
+#undef IEEE80211_DEBUG
|
||||
+#undef IEEE80211_DEBUG_REFCNT /* Node reference count debugging */
|
||||
|
||||
/* Definitions for IEEE 802.11 drivers. */
|
||||
#include <net80211/ieee80211_linux.h>
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/tools/do_multi.c madwifi-ng-refcount-r2313-20070505.dev/tools/do_multi.c
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/tools/do_multi.c 2007-05-13 18:17:55.192178552 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/tools/do_multi.c 2007-05-13 18:17:56.461985512 +0200
|
||||
diff -ur madwifi.old/tools/do_multi.c madwifi.dev/tools/do_multi.c
|
||||
--- madwifi.old/tools/do_multi.c 2007-05-23 16:46:50.718939864 +0200
|
||||
+++ madwifi.dev/tools/do_multi.c 2007-05-23 16:47:03.349019800 +0200
|
||||
@@ -9,16 +9,20 @@
|
||||
|
||||
progname = basename(argv[0]);
|
||||
|
@ -137,9 +139,9 @@ diff -urN madwifi-ng-refcount-r2313-20070505.old/tools/do_multi.c madwifi-ng-ref
|
|||
if(strcmp(progname, "athkey") == 0)
|
||||
ret = athkey_init(argc, argv);
|
||||
if(strcmp(progname, "athstats") == 0)
|
||||
diff -urN madwifi-ng-refcount-r2313-20070505.old/tools/Makefile madwifi-ng-refcount-r2313-20070505.dev/tools/Makefile
|
||||
--- madwifi-ng-refcount-r2313-20070505.old/tools/Makefile 2007-05-13 18:17:55.192178552 +0200
|
||||
+++ madwifi-ng-refcount-r2313-20070505.dev/tools/Makefile 2007-05-13 18:17:56.461985512 +0200
|
||||
diff -ur madwifi.old/tools/Makefile madwifi.dev/tools/Makefile
|
||||
--- madwifi.old/tools/Makefile 2007-05-23 16:46:50.719939712 +0200
|
||||
+++ madwifi.dev/tools/Makefile 2007-05-23 16:47:03.349019800 +0200
|
||||
@@ -52,7 +52,7 @@
|
||||
|
||||
ifdef DOMULTI
|
||||
|
|
Loading…
Reference in New Issue