diff options
author | Björn Steinbrink <B.Steinbrink@gmx.de> | 2007-05-28 03:43:39 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2007-05-29 11:16:34 -0400 |
commit | 20c9d198731f440eaad6fafd00fe7ccfcd443a84 (patch) | |
tree | 10bc3ce87f5b5933b1aec038f5c8c9e9d4aa68c1 /drivers/net/wireless/prism54 | |
parent | c420bc9f09a0926b708c3edb27eacba434a4f4ba (diff) |
[PATCH] prism54: fix monitor mode oops
Manually set the device of a skb for prism54 cards that are in monitor
mode as we never call eth_type_trans in that case.
Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/prism54')
-rw-r--r-- | drivers/net/wireless/prism54/islpci_eth.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/prism54/islpci_eth.c b/drivers/net/wireless/prism54/islpci_eth.c index dd070cccf324..f49eb068c7d0 100644 --- a/drivers/net/wireless/prism54/islpci_eth.c +++ b/drivers/net/wireless/prism54/islpci_eth.c @@ -378,9 +378,10 @@ islpci_eth_receive(islpci_private *priv) display_buffer((char *) skb->data, skb->len); #endif /* take care of monitor mode and spy monitoring. */ - if (unlikely(priv->iw_mode == IW_MODE_MONITOR)) + if (unlikely(priv->iw_mode == IW_MODE_MONITOR)) { + skb->dev = ndev; discard = islpci_monitor_rx(priv, &skb); - else { + } else { if (unlikely(skb->data[2 * ETH_ALEN] == 0)) { /* The packet has a rx_annex. Read it for spy monitoring, Then * remove it, while keeping the 2 leading MAC addr. |