diff options
Diffstat (limited to 'drivers/net/wireless/ti/wl1251/rx.c')
| -rw-r--r-- | drivers/net/wireless/ti/wl1251/rx.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/ti/wl1251/rx.c b/drivers/net/wireless/ti/wl1251/rx.c index 23289d49dd3..cde0eaf9971 100644 --- a/drivers/net/wireless/ti/wl1251/rx.c +++ b/drivers/net/wireless/ti/wl1251/rx.c @@ -83,7 +83,7 @@ static void wl1251_rx_status(struct wl1251 *wl,  	status->flag |= RX_FLAG_MACTIME_START; -	if (desc->flags & RX_DESC_ENCRYPTION_MASK) { +	if (!wl->monitor_present && (desc->flags & RX_DESC_ENCRYPTION_MASK)) {  		status->flag |= RX_FLAG_IV_STRIPPED | RX_FLAG_MMIC_STRIPPED;  		if (likely(!(desc->flags & RX_DESC_DECRYPT_FAIL))) @@ -180,7 +180,7 @@ static void wl1251_rx_body(struct wl1251 *wl,  	wl1251_mem_read(wl, rx_packet_ring_addr, rx_buffer, length);  	/* The actual length doesn't include the target's alignment */ -	skb->len = desc->length  - PLCP_HEADER_LENGTH; +	skb_trim(skb, desc->length - PLCP_HEADER_LENGTH);  	fc = (u16 *)skb->data;  | 
