ipv6: move ip6_local_out into core kernel
authorCong Wang <amwang@redhat.com>
Sat, 31 Aug 2013 05:44:29 +0000 (13:44 +0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 1 Sep 2013 02:30:00 +0000 (22:30 -0400)
It will be used the vxlan kernel module.

Signed-off-by: Cong Wang <amwang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_output.c
net/ipv6/output_core.c

index 6e3ddf806ec20abcfd4952dfe97d2b521138e055..dd08cfd8999e0e319d610ce71e21733c01404735 100644 (file)
 #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);
index 53a062187db1a4c00df818de6029a40346d337aa..827f795209cf9d607c5a63c188a369bb6c1ad684 100644 (file)
@@ -97,3 +97,29 @@ int ip6_dst_hoplimit(struct dst_entry *dst)
 }
 EXPORT_SYMBOL(ip6_dst_hoplimit);
 #endif
+
+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);
+}
+EXPORT_SYMBOL_GPL(__ip6_local_out);
+
+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);