diff options
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00queue.c')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00queue.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c index 7f908a17e368..e4a1dbeb18fd 100644 --- a/drivers/net/wireless/rt2x00/rt2x00queue.c +++ b/drivers/net/wireless/rt2x00/rt2x00queue.c | |||
@@ -420,8 +420,12 @@ int rt2x00queue_write_tx_frame(struct data_queue *queue, struct sk_buff *skb) | |||
420 | * the frame so we can provide it to the driver seperately. | 420 | * the frame so we can provide it to the driver seperately. |
421 | */ | 421 | */ |
422 | if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) && | 422 | if (test_bit(ENTRY_TXD_ENCRYPT, &txdesc.flags) && |
423 | !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) | 423 | !test_bit(ENTRY_TXD_ENCRYPT_IV, &txdesc.flags)) { |
424 | rt2x00crypto_tx_remove_iv(skb, iv_len); | 424 | if (test_bit(CONFIG_CRYPTO_COPY_IV, &queue->rt2x00dev->flags)) |
425 | rt2x00crypto_tx_copy_iv(skb, iv_len); | ||
426 | else | ||
427 | rt2x00crypto_tx_remove_iv(skb, iv_len); | ||
428 | } | ||
425 | 429 | ||
426 | /* | 430 | /* |
427 | * It could be possible that the queue was corrupted and this | 431 | * It could be possible that the queue was corrupted and this |