mac802154: rx: move receive handling into rx.c
[deliverable/linux.git] / net / mac802154 / monitor.c
index 575832231fd63c5a6bde1d9d8ae9b3a597390874..dfdedc206c6a803dddb6e7fc6de170f5496f5409 100644 (file)
@@ -18,9 +18,7 @@
  */
 
 #include <linux/netdevice.h>
-#include <linux/skbuff.h>
 #include <linux/if_arp.h>
-#include <linux/crc-ccitt.h>
 #include <linux/ieee802154.h>
 
 #include <net/mac802154.h>
 
 #include "ieee802154_i.h"
 
-void mac802154_monitors_rx(struct ieee802154_local *local, struct sk_buff *skb)
-{
-       struct sk_buff *skb2;
-       struct ieee802154_sub_if_data *sdata;
-       u16 crc = crc_ccitt(0, skb->data, skb->len);
-       u8 *data;
-
-       rcu_read_lock();
-       list_for_each_entry_rcu(sdata, &local->interfaces, list) {
-               if (sdata->type != IEEE802154_DEV_MONITOR ||
-                   !netif_running(sdata->dev))
-                       continue;
-
-               skb2 = skb_clone(skb, GFP_ATOMIC);
-               skb2->dev = sdata->dev;
-               skb2->pkt_type = PACKET_HOST;
-               data = skb_put(skb2, 2);
-               data[0] = crc & 0xff;
-               data[1] = crc >> 8;
-
-               netif_rx_ni(skb2);
-       }
-       rcu_read_unlock();
-}
-
 static const struct net_device_ops mac802154_monitor_ops = {
        .ndo_open               = mac802154_slave_open,
        .ndo_stop               = mac802154_slave_close,
This page took 0.024925 seconds and 5 git commands to generate.