Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
0a0755c9
Commit
0a0755c9
authored
Dec 05, 2008
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
parents
a6af2d6b
cde6901b
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
30 additions
and
5 deletions
+30
-5
drivers/net/wireless/ipw2200.c
drivers/net/wireless/ipw2200.c
+4
-0
drivers/net/wireless/iwlwifi/iwl-core.c
drivers/net/wireless/iwlwifi/iwl-core.c
+3
-0
drivers/net/wireless/iwlwifi/iwl-sta.c
drivers/net/wireless/iwlwifi/iwl-sta.c
+21
-3
drivers/net/wireless/zd1211rw/zd_mac.c
drivers/net/wireless/zd1211rw/zd_mac.c
+1
-1
net/mac80211/sta_info.c
net/mac80211/sta_info.c
+1
-1
No files found.
drivers/net/wireless/ipw2200.c
View file @
0a0755c9
...
...
@@ -3897,6 +3897,7 @@ static int ipw_disassociate(void *data)
if
(
!
(
priv
->
status
&
(
STATUS_ASSOCIATED
|
STATUS_ASSOCIATING
)))
return
0
;
ipw_send_disassociate
(
data
,
0
);
netif_carrier_off
(
priv
->
net_dev
);
return
1
;
}
...
...
@@ -10190,6 +10191,9 @@ static int ipw_tx_skb(struct ipw_priv *priv, struct ieee80211_txb *txb,
u16
remaining_bytes
;
int
fc
;
if
(
!
(
priv
->
status
&
STATUS_ASSOCIATED
))
goto
drop
;
hdr_len
=
ieee80211_get_hdrlen
(
le16_to_cpu
(
hdr
->
frame_ctl
));
switch
(
priv
->
ieee
->
iw_mode
)
{
case
IW_MODE_ADHOC
:
...
...
drivers/net/wireless/iwlwifi/iwl-core.c
View file @
0a0755c9
...
...
@@ -290,6 +290,9 @@ void iwl_clear_stations_table(struct iwl_priv *priv)
priv
->
num_stations
=
0
;
memset
(
priv
->
stations
,
0
,
sizeof
(
priv
->
stations
));
/* clean ucode key table bit map */
priv
->
ucode_key_table
=
0
;
spin_unlock_irqrestore
(
&
priv
->
sta_lock
,
flags
);
}
EXPORT_SYMBOL
(
iwl_clear_stations_table
);
...
...
drivers/net/wireless/iwlwifi/iwl-sta.c
View file @
0a0755c9
...
...
@@ -475,7 +475,7 @@ static int iwl_get_free_ucode_key_index(struct iwl_priv *priv)
if
(
!
test_and_set_bit
(
i
,
&
priv
->
ucode_key_table
))
return
i
;
return
-
1
;
return
WEP_INVALID_OFFSET
;
}
int
iwl_send_static_wepkey_cmd
(
struct
iwl_priv
*
priv
,
u8
send_if_empty
)
...
...
@@ -620,6 +620,9 @@ static int iwl_set_wep_dynamic_key_info(struct iwl_priv *priv,
/* else, we are overriding an existing key => no need to allocated room
* in uCode. */
WARN
(
priv
->
stations
[
sta_id
].
sta
.
key
.
key_offset
==
WEP_INVALID_OFFSET
,
"no space for new kew"
);
priv
->
stations
[
sta_id
].
sta
.
key
.
key_flags
=
key_flags
;
priv
->
stations
[
sta_id
].
sta
.
sta
.
modify_mask
=
STA_MODIFY_KEY_MASK
;
priv
->
stations
[
sta_id
].
sta
.
mode
=
STA_CONTROL_MODIFY_MSK
;
...
...
@@ -637,6 +640,7 @@ static int iwl_set_ccmp_dynamic_key_info(struct iwl_priv *priv,
{
unsigned
long
flags
;
__le16
key_flags
=
0
;
int
ret
;
key_flags
|=
(
STA_KEY_FLG_CCMP
|
STA_KEY_FLG_MAP_KEY_MSK
);
key_flags
|=
cpu_to_le16
(
keyconf
->
keyidx
<<
STA_KEY_FLG_KEYID_POS
);
...
...
@@ -664,14 +668,18 @@ static int iwl_set_ccmp_dynamic_key_info(struct iwl_priv *priv,
/* else, we are overriding an existing key => no need to allocated room
* in uCode. */
WARN
(
priv
->
stations
[
sta_id
].
sta
.
key
.
key_offset
==
WEP_INVALID_OFFSET
,
"no space for new kew"
);
priv
->
stations
[
sta_id
].
sta
.
key
.
key_flags
=
key_flags
;
priv
->
stations
[
sta_id
].
sta
.
sta
.
modify_mask
=
STA_MODIFY_KEY_MASK
;
priv
->
stations
[
sta_id
].
sta
.
mode
=
STA_CONTROL_MODIFY_MSK
;
ret
=
iwl_send_add_sta
(
priv
,
&
priv
->
stations
[
sta_id
].
sta
,
CMD_ASYNC
);
spin_unlock_irqrestore
(
&
priv
->
sta_lock
,
flags
);
IWL_DEBUG_INFO
(
"hwcrypto: modify ucode station key info
\n
"
);
return
iwl_send_add_sta
(
priv
,
&
priv
->
stations
[
sta_id
].
sta
,
CMD_ASYNC
);
return
ret
;
}
static
int
iwl_set_tkip_dynamic_key_info
(
struct
iwl_priv
*
priv
,
...
...
@@ -696,6 +704,9 @@ static int iwl_set_tkip_dynamic_key_info(struct iwl_priv *priv,
/* else, we are overriding an existing key => no need to allocated room
* in uCode. */
WARN
(
priv
->
stations
[
sta_id
].
sta
.
key
.
key_offset
==
WEP_INVALID_OFFSET
,
"no space for new kew"
);
/* This copy is acutally not needed: we get the key with each TX */
memcpy
(
priv
->
stations
[
sta_id
].
keyinfo
.
key
,
keyconf
->
key
,
16
);
...
...
@@ -734,6 +745,13 @@ int iwl_remove_dynamic_key(struct iwl_priv *priv,
return
0
;
}
if
(
priv
->
stations
[
sta_id
].
sta
.
key
.
key_offset
==
WEP_INVALID_OFFSET
)
{
IWL_WARNING
(
"Removing wrong key %d 0x%x
\n
"
,
keyconf
->
keyidx
,
key_flags
);
spin_unlock_irqrestore
(
&
priv
->
sta_lock
,
flags
);
return
0
;
}
if
(
!
test_and_clear_bit
(
priv
->
stations
[
sta_id
].
sta
.
key
.
key_offset
,
&
priv
->
ucode_key_table
))
IWL_ERROR
(
"index %d not used in uCode key table.
\n
"
,
...
...
drivers/net/wireless/zd1211rw/zd_mac.c
View file @
0a0755c9
...
...
@@ -615,7 +615,7 @@ static int filter_ack(struct ieee80211_hw *hw, struct ieee80211_hdr *rx_hdr,
struct
ieee80211_hdr
*
tx_hdr
;
tx_hdr
=
(
struct
ieee80211_hdr
*
)
skb
->
data
;
if
(
likely
(
!
compare_ether_addr
(
tx_hdr
->
addr2
,
rx_hdr
->
addr1
)))
if
(
likely
(
!
memcmp
(
tx_hdr
->
addr2
,
rx_hdr
->
addr1
,
ETH_ALEN
)))
{
__skb_unlink
(
skb
,
q
);
tx_status
(
hw
,
skb
,
IEEE80211_TX_STAT_ACK
,
stats
->
signal
,
1
);
...
...
net/mac80211/sta_info.c
View file @
0a0755c9
...
...
@@ -99,7 +99,7 @@ struct sta_info *sta_info_get(struct ieee80211_local *local, const u8 *addr)
sta
=
rcu_dereference
(
local
->
sta_hash
[
STA_HASH
(
addr
)]);
while
(
sta
)
{
if
(
compare_ether_addr
(
sta
->
sta
.
addr
,
addr
)
==
0
)
if
(
memcmp
(
sta
->
sta
.
addr
,
addr
,
ETH_ALEN
)
==
0
)
break
;
sta
=
rcu_dereference
(
sta
->
hnext
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment