On Tue, 2008-09-30 at 11:45 +0200, Felix Fietkau wrote: > @@ -374,7 +374,7 @@ > struct queue_entry *entry = rt2x00queue_get_entry(queue, Q_INDEX); > struct txentry_desc txdesc; > struct skb_frame_desc *skbdesc; > - unsigned int iv_len = IEEE80211_SKB_CB(skb)->control.iv_len; > + unsigned int iv_len = IEEE80211_SKB_CB(skb)->control.hw_key->iv_len; Won't that explode when hw_key is unset? > --- a/net/mac80211/wep.c > +++ b/net/mac80211/wep.c > @@ -313,8 +313,8 @@ > { > struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); > > - info->control.iv_len = WEP_IV_LEN; > - info->control.icv_len = WEP_ICV_LEN; > + info->control.hw_key->iv_len = WEP_IV_LEN; > + info->control.hw_key->icv_len = WEP_ICV_LEN; > > if (!(tx->key->flags & KEY_FLAG_UPLOADED_TO_HARDWARE)) { > if (ieee80211_wep_encrypt(tx->local, skb, tx->key)) I don't think you should set this here, just set it when the key algorithm is fixed initially, that way it's also already valid when the key is put into hw accel. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part