|
@@ -56,31 +56,6 @@
|
|
|
#include <net/checksum.h>
|
|
|
#include <linux/mroute6.h>
|
|
|
|
|
|
-int __ip6_local_out(struct sk_buff *skb)
|
|
|
-{
|
|
|
- int len;
|
|
|
-
|
|
|
- len = skb->len - sizeof(struct ipv6hdr);
|
|
|
- if (len > IPV6_MAXPLEN)
|
|
|
- len = 0;
|
|
|
- ipv6_hdr(skb)->payload_len = htons(len);
|
|
|
-
|
|
|
- return nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, skb, NULL,
|
|
|
- skb_dst(skb)->dev, dst_output);
|
|
|
-}
|
|
|
-
|
|
|
-int ip6_local_out(struct sk_buff *skb)
|
|
|
-{
|
|
|
- int err;
|
|
|
-
|
|
|
- err = __ip6_local_out(skb);
|
|
|
- if (likely(err == 1))
|
|
|
- err = dst_output(skb);
|
|
|
-
|
|
|
- return err;
|
|
|
-}
|
|
|
-EXPORT_SYMBOL_GPL(ip6_local_out);
|
|
|
-
|
|
|
static int ip6_finish_output2(struct sk_buff *skb)
|
|
|
{
|
|
|
struct dst_entry *dst = skb_dst(skb);
|