projects
/
openwrt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[ar71xx] generate firmware image for the TL-WR941ND device
[openwrt.git]
/
package
/
madwifi
/
patches
/
393-mbss_vap_auth.patch
diff --git
a/package/madwifi/patches/393-mbss_vap_auth.patch
b/package/madwifi/patches/393-mbss_vap_auth.patch
index
ad817a0
..
8176f2e
100644
(file)
--- a/
package/madwifi/patches/393-mbss_vap_auth.patch
+++ b/
package/madwifi/patches/393-mbss_vap_auth.patch
@@
-19,7
+19,7
@@
if (ni == NULL) {
ni = ieee80211_alloc_node_table(vap, se->se_macaddr);
IEEE80211_DPRINTF(vap, IEEE80211_MSG_ASSOC,
if (ni == NULL) {
ni = ieee80211_alloc_node_table(vap, se->se_macaddr);
IEEE80211_DPRINTF(vap, IEEE80211_MSG_ASSOC,
-@@ -139
1,6 +1394
,53 @@ ieee80211_add_neighbor(struct ieee80211v
+@@ -139
4,6 +1397
,53 @@ ieee80211_add_neighbor(struct ieee80211v
return ni;
}
return ni;
}
@@
-73,7
+73,7
@@
/*
* Return the node for the sender of a frame; if the sender is unknown return
* NULL. The caller is expected to deal with this. (The frame is sent to all
/*
* Return the node for the sender of a frame; if the sender is unknown return
* NULL. The caller is expected to deal with this. (The frame is sent to all
-@@ -140
0,10 +1450
,10 @@ ieee80211_add_neighbor(struct ieee80211v
+@@ -140
3,10 +1453
,10 @@ ieee80211_add_neighbor(struct ieee80211v
*/
struct ieee80211_node *
#ifdef IEEE80211_DEBUG_REFCNT
*/
struct ieee80211_node *
#ifdef IEEE80211_DEBUG_REFCNT
@@
-86,7
+86,7
@@
const struct ieee80211_frame_min *wh)
#endif
{
const struct ieee80211_frame_min *wh)
#endif
{
-@@ -141
1,9 +1461
,8 @@ ieee80211_find_rxnode(struct ieee80211co
+@@ -141
4,9 +1464
,8 @@ ieee80211_find_rxnode(struct ieee80211co
((wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK) == IEEE80211_FC0_TYPE_CTL)
#define IS_PSPOLL(wh) \
((wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK) == IEEE80211_FC0_SUBTYPE_PS_POLL)
((wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK) == IEEE80211_FC0_TYPE_CTL)
#define IS_PSPOLL(wh) \
((wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK) == IEEE80211_FC0_SUBTYPE_PS_POLL)
@@
-98,7
+98,7
@@
const u_int8_t *addr;
if (IS_CTL(wh) && !IS_PSPOLL(wh) /*&& !IS_RTS(ah)*/)
const u_int8_t *addr;
if (IS_CTL(wh) && !IS_PSPOLL(wh) /*&& !IS_RTS(ah)*/)
-@@ -142
6,32 +1475,24
@@ ieee80211_find_rxnode(struct ieee80211co
+@@ -142
9,32 +1478,25
@@ ieee80211_find_rxnode(struct ieee80211co
/* XXX check ic_bss first in station mode */
/* XXX 4-address frames? */
/* XXX check ic_bss first in station mode */
/* XXX 4-address frames? */
@@
-118,6
+118,7
@@
- else
- return NULL;
+ ni = ieee80211_ref_node(avp->iv_wdsnode);
- else
- return NULL;
+ ni = ieee80211_ref_node(avp->iv_wdsnode);
++ return ni;
}
+ if (!(vap->iv_flags_ext & IEEE80211_FEXT_WDS))
+ return NULL;
}
+ if (!(vap->iv_flags_ext & IEEE80211_FEXT_WDS))
+ return NULL;
@@
-140,7
+141,7
@@
}
#ifdef IEEE80211_DEBUG_REFCNT
EXPORT_SYMBOL(ieee80211_find_rxnode_debug);
}
#ifdef IEEE80211_DEBUG_REFCNT
EXPORT_SYMBOL(ieee80211_find_rxnode_debug);
-@@ -147
6,15 +1517
,14 @@ ieee80211_find_txnode(struct ieee80211va
+@@ -147
9,15 +1521
,14 @@ ieee80211_find_txnode(struct ieee80211va
struct ieee80211com *ic = vap->iv_ic;
struct ieee80211_node_table *nt;
struct ieee80211_node *ni = NULL;
struct ieee80211com *ic = vap->iv_ic;
struct ieee80211_node_table *nt;
struct ieee80211_node *ni = NULL;
@@
-157,7
+158,7
@@
/*
* The destination address should be in the node table
/*
* The destination address should be in the node table
-@@ -150
2,11 +1542
,22 @@ ieee80211_find_txnode(struct ieee80211va
+@@ -150
5,11 +1546
,22 @@ ieee80211_find_txnode(struct ieee80211va
/* XXX: Can't hold lock across dup_bss due to recursive locking. */
nt = &vap->iv_ic->ic_sta;
IEEE80211_NODE_TABLE_LOCK_IRQ(nt);
/* XXX: Can't hold lock across dup_bss due to recursive locking. */
nt = &vap->iv_ic->ic_sta;
IEEE80211_NODE_TABLE_LOCK_IRQ(nt);
@@
-182,7
+183,7
@@
IEEE80211_NODE_TABLE_UNLOCK_IRQ(nt);
if (ni == NULL) {
IEEE80211_NODE_TABLE_UNLOCK_IRQ(nt);
if (ni == NULL) {
-@@ -196
1,13 +2012,29
@@ remove_worse_nodes(void *arg, struct iee
+@@ -196
4,13 +2016,32
@@ remove_worse_nodes(void *arg, struct iee
}
}
}
}
@@
-197,6
+198,9
@@
+ if (ni->ni_vap == rni->ni_vap)
+ return;
+
+ if (ni->ni_vap == rni->ni_vap)
+ return;
+
++ if (!IEEE80211_ADDR_EQ(rni->ni_macaddr, ni->ni_macaddr))
++ return;
++
+ ieee80211_node_leave(ni);
+}
+
+ ieee80211_node_leave(ni);
+}
+
This page took
0.027483 seconds
and
4
git commands to generate.