summaryrefslogtreecommitdiff
path: root/ztd-eth.c
diff options
context:
space:
mode:
authortzafrir <tzafrir@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2007-12-29 22:48:00 +0000
committertzafrir <tzafrir@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2007-12-29 22:48:00 +0000
commit9a2cb6e6a6209d8efc6c8e1c991ebdbb286baca7 (patch)
tree7a52a18ee9f07b48ca2137f4e8d018b54d14ab89 /ztd-eth.c
parenta6f9fef3a7650f8d725988d93232c2d7dff47171 (diff)
Adapt ztd-eth to newer interfaces from kernel 2.6.24 .
git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.2@3577 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'ztd-eth.c')
-rw-r--r--ztd-eth.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/ztd-eth.c b/ztd-eth.c
index f2b58eb..14a9fe5 100644
--- a/ztd-eth.c
+++ b/ztd-eth.c
@@ -181,8 +181,12 @@ static int ztdeth_transmit(void *pvt, unsigned char *msg, int msglen)
skb->nh.raw = skb->data;
#endif
skb->dev = dev;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24)
+ dev_hard_header(skb, dev, ETH_P_ZTDETH, addr, dev->dev_addr, skb->len);
+#else
if (dev->hard_header)
dev->hard_header(skb, dev, ETH_P_ZTDETH, addr, dev->dev_addr, skb->len);
+#endif
dev_queue_xmit(skb);
}
}
@@ -359,7 +363,11 @@ static void *ztdeth_create(struct zt_span *span, char *addr)
}
z->subaddr = htons(sub);
}
- z->dev = dev_get_by_name(z->ethdev);
+ z->dev = dev_get_by_name(
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24)
+ &init_net,
+#endif
+ z->ethdev);
if (!z->dev) {
printk("TDMoE: Invalid device '%s'\n", z->ethdev);
kfree(z);