9 #include <linux/module.h>
11 #include <linux/kernel.h>
14 #include <linux/types.h>
15 #include <linux/sysctl.h>
16 #include <linux/string.h>
17 #include <linux/socket.h>
18 #include <linux/errno.h>
19 #include <linux/fcntl.h>
21 #include <linux/if_ether.h>
22 #include <linux/slab.h>
27 #include <linux/netdevice.h>
29 #include <linux/if_arp.h>
40 const void *
daddr,
const void *
saddr,
unsigned int len)
56 static int rose_rebuild_header(
struct sk_buff *skb)
61 unsigned char *bp = (
unsigned char *)skb->
data;
75 skb_set_owner_w(skbn, skb->
sk);
93 static int rose_set_mac_address(
struct net_device *dev,
void *
addr)
122 netif_start_queue(dev);
129 netif_stop_queue(dev);
138 if (!netif_running(dev)) {
147 static const struct header_ops rose_header_ops = {
148 .create = rose_header,
149 .rebuild= rose_rebuild_header,
153 .ndo_open = rose_open,
154 .ndo_stop = rose_close,
155 .ndo_start_xmit = rose_xmit,
156 .ndo_set_mac_address = rose_set_mac_address,