|
@@ -573,32 +573,6 @@ static int ax_open_dev(struct net_device *dev)
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-#if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE)
|
|
|
|
-
|
|
|
|
-/* Return the frame type ID */
|
|
|
|
-static int ax_header(struct sk_buff *skb, struct net_device *dev,
|
|
|
|
- unsigned short type, const void *daddr,
|
|
|
|
- const void *saddr, unsigned len)
|
|
|
|
-{
|
|
|
|
-#ifdef CONFIG_INET
|
|
|
|
- if (type != ETH_P_AX25)
|
|
|
|
- return ax25_hard_header(skb, dev, type, daddr, saddr, len);
|
|
|
|
-#endif
|
|
|
|
- return 0;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-static int ax_rebuild_header(struct sk_buff *skb)
|
|
|
|
-{
|
|
|
|
-#ifdef CONFIG_INET
|
|
|
|
- return ax25_rebuild_header(skb);
|
|
|
|
-#else
|
|
|
|
- return 0;
|
|
|
|
-#endif
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-#endif /* CONFIG_{AX25,AX25_MODULE} */
|
|
|
|
-
|
|
|
|
/* Open the low-level part of the AX25 channel. Easy! */
|
|
/* Open the low-level part of the AX25 channel. Easy! */
|
|
static int ax_open(struct net_device *dev)
|
|
static int ax_open(struct net_device *dev)
|
|
{
|
|
{
|
|
@@ -662,11 +636,6 @@ static int ax_close(struct net_device *dev)
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-static const struct header_ops ax_header_ops = {
|
|
|
|
- .create = ax_header,
|
|
|
|
- .rebuild = ax_rebuild_header,
|
|
|
|
-};
|
|
|
|
-
|
|
|
|
static const struct net_device_ops ax_netdev_ops = {
|
|
static const struct net_device_ops ax_netdev_ops = {
|
|
.ndo_open = ax_open_dev,
|
|
.ndo_open = ax_open_dev,
|
|
.ndo_stop = ax_close,
|
|
.ndo_stop = ax_close,
|
|
@@ -682,7 +651,7 @@ static void ax_setup(struct net_device *dev)
|
|
dev->addr_len = 0;
|
|
dev->addr_len = 0;
|
|
dev->type = ARPHRD_AX25;
|
|
dev->type = ARPHRD_AX25;
|
|
dev->tx_queue_len = 10;
|
|
dev->tx_queue_len = 10;
|
|
- dev->header_ops = &ax_header_ops;
|
|
|
|
|
|
+ dev->header_ops = &ax25_header_ops;
|
|
dev->netdev_ops = &ax_netdev_ops;
|
|
dev->netdev_ops = &ax_netdev_ops;
|
|
|
|
|
|
|
|
|