neigh: Move neigh_compat_output into ax25_ip.c

The only caller is now is ax25_neigh_construct so move
neigh_compat_output into ax25_ip.c make it static and rename it
ax25_neigh_output.

Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-hams@vger.kernel.org
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Eric W. Biederman
2015-03-02 00:07:37 -06:00
committed by David S. Miller
parent 21bfb8e933
commit def6775369
3 changed files with 16 additions and 23 deletions

View File

@@ -216,6 +216,20 @@ put:
return 1;
}
static int ax25_neigh_output(struct neighbour *neigh, struct sk_buff *skb)
{
struct net_device *dev = skb->dev;
__skb_pull(skb, skb_network_offset(skb));
if (dev_hard_header(skb, dev, ntohs(skb->protocol), NULL, NULL,
skb->len) < 0 &&
dev_rebuild_header(skb))
return 0;
return dev_queue_xmit(skb);
}
int ax25_neigh_construct(struct neighbour *neigh)
{
/* This trouble could be saved if ax25 would right a proper
@@ -227,8 +241,8 @@ int ax25_neigh_construct(struct neighbour *neigh)
return -EINVAL;
priv->ops = *neigh->ops;
priv->ops.output = neigh_compat_output;
priv->ops.connected_output = neigh_compat_output;
priv->ops.output = ax25_neigh_output;
priv->ops.connected_output = ax25_neigh_output;
return 0;
}