openwrt/package/madwifi/patches/111-minstrel_crash.patch

15 lines
611 B
Diff

Index: madwifi-ng-r2568-20070710/ath_rate/minstrel/minstrel.c
===================================================================
--- madwifi-ng-r2568-20070710.orig/ath_rate/minstrel/minstrel.c 2007-10-20 20:51:37.000000000 +0200
+++ madwifi-ng-r2568-20070710/ath_rate/minstrel/minstrel.c 2007-10-20 20:52:49.000000000 +0200
@@ -388,6 +388,9 @@
struct minstrel_node *sn = ATH_NODE_MINSTREL(an);
int rc1, rc2, rc3; /* Index into the rate table, so for example, it is 0..11 */
+ if (sn->num_rates <= 0)
+ return;
+
if (sn->is_sampling) {
rc1 = sn->max_tp_rate;
sn->is_sampling = 0;