summaryrefslogtreecommitdiff
path: root/libdde_linux26/include
diff options
context:
space:
mode:
authorZheng Da <zhengda1936@gmail.com>2010-01-29 20:31:20 +0100
committerZheng Da <zhengda1936@gmail.com>2010-01-29 20:31:20 +0100
commit2bbc0548875321fa8660566254699cbab9aa00e9 (patch)
tree31f095379497ce39ea4e0132f85086825d4bfb78 /libdde_linux26/include
parent3f46d3b565db7c4a88e6484fc8022d4fff1c65e3 (diff)
libdde_linux26 is adapted to be used by libmachdev.
Diffstat (limited to 'libdde_linux26/include')
-rw-r--r--libdde_linux26/include/dde26_net.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/libdde_linux26/include/dde26_net.h b/libdde_linux26/include/dde26_net.h
index 2c3847b8..4545e7cc 100644
--- a/libdde_linux26/include/dde26_net.h
+++ b/libdde_linux26/include/dde26_net.h
@@ -2,9 +2,10 @@
#define __DDE_26_NET_H
#include <linux/skbuff.h>
+#include <linux/netdevice.h>
/** rx callback function */
-typedef int (*linux_rx_callback)(struct sk_buff *);
+typedef int (*linux_rx_callback)(char *, int, struct net_device *);
extern linux_rx_callback l4dde26_rx_callback;
@@ -25,8 +26,10 @@ linux_rx_callback l4dde26_register_rx_callback(linux_rx_callback cb);
*/
static inline int l4dde26_do_rx_callback(struct sk_buff *s)
{
- if (l4dde26_rx_callback != NULL)
- return l4dde26_rx_callback(s);
+ if (l4dde26_rx_callback != NULL) {
+ skb_push(s, s->dev->hard_header_len);
+ return l4dde26_rx_callback(s->data, s->len, s->dev);
+ }
return 0;
}