summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xztd-eth.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ztd-eth.c b/ztd-eth.c
index 4975d0c..62e4382 100755
--- a/ztd-eth.c
+++ b/ztd-eth.c
@@ -86,7 +86,11 @@ static int ztdeth_rcv(struct sk_buff *skb, struct net_device *dev, struct packet
struct zt_span *span;
struct ztdeth_header *zh;
zh = (struct ztdeth_header *)skb->nh.raw;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,9)
+ span = ztdeth_getspan(eth_hdr(skb)->h_source, zh->subaddr);
+#else
span = ztdeth_getspan(skb->mac.ethernet->h_source, zh->subaddr);
+#endif
if (span) {
skb_pull(skb, sizeof(struct ztdeth_header));
zt_dynamic_receive(span, (unsigned char *)skb->data, skb->len);