diff options
Diffstat (limited to 'net/ipv6')
| -rw-r--r-- | net/ipv6/addrconf.c | 1 | ||||
| -rw-r--r-- | net/ipv6/addrconf_core.c | 1 | ||||
| -rw-r--r-- | net/ipv6/exthdrs.c | 1 | ||||
| -rw-r--r-- | net/ipv6/exthdrs_core.c | 1 | ||||
| -rw-r--r-- | net/ipv6/fib6_rules.c | 1 | ||||
| -rw-r--r-- | net/ipv6/ip6_flowlabel.c | 1 | ||||
| -rw-r--r-- | net/ipv6/ip6mr.c | 1 | ||||
| -rw-r--r-- | net/ipv6/netfilter.c | 14 | ||||
| -rw-r--r-- | net/ipv6/netfilter/nf_conntrack_reasm.c | 7 | ||||
| -rw-r--r-- | net/ipv6/proc.c | 1 | ||||
| -rw-r--r-- | net/ipv6/raw.c | 1 | ||||
| -rw-r--r-- | net/ipv6/reassembly.c | 1 | ||||
| -rw-r--r-- | net/ipv6/route.c | 1 | ||||
| -rw-r--r-- | net/ipv6/sysctl_net_ipv6.c | 1 | ||||
| -rw-r--r-- | net/ipv6/tcp_ipv6.c | 12 | ||||
| -rw-r--r-- | net/ipv6/udp.c | 12 | ||||
| -rw-r--r-- | net/ipv6/udplite.c | 14 | ||||
| -rw-r--r-- | net/ipv6/xfrm6_state.c | 1 |
18 files changed, 56 insertions, 16 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index d0611a5de45f..cf88df82e2c2 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
| @@ -87,6 +87,7 @@ | |||
| 87 | 87 | ||
| 88 | #include <linux/proc_fs.h> | 88 | #include <linux/proc_fs.h> |
| 89 | #include <linux/seq_file.h> | 89 | #include <linux/seq_file.h> |
| 90 | #include <linux/export.h> | ||
| 90 | 91 | ||
| 91 | /* Set to 3 to get tracing... */ | 92 | /* Set to 3 to get tracing... */ |
| 92 | #define ACONF_DEBUG 2 | 93 | #define ACONF_DEBUG 2 |
diff --git a/net/ipv6/addrconf_core.c b/net/ipv6/addrconf_core.c index 6b03826552e1..399287e595d7 100644 --- a/net/ipv6/addrconf_core.c +++ b/net/ipv6/addrconf_core.c | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | * not configured or static. | 3 | * not configured or static. |
| 4 | */ | 4 | */ |
| 5 | 5 | ||
| 6 | #include <linux/export.h> | ||
| 6 | #include <net/ipv6.h> | 7 | #include <net/ipv6.h> |
| 7 | 8 | ||
| 8 | #define IPV6_ADDR_SCOPE_TYPE(scope) ((scope) << 16) | 9 | #define IPV6_ADDR_SCOPE_TYPE(scope) ((scope) << 16) |
diff --git a/net/ipv6/exthdrs.c b/net/ipv6/exthdrs.c index 1318de4c3e8d..bf22a225f422 100644 --- a/net/ipv6/exthdrs.c +++ b/net/ipv6/exthdrs.c | |||
| @@ -30,6 +30,7 @@ | |||
| 30 | #include <linux/in6.h> | 30 | #include <linux/in6.h> |
| 31 | #include <linux/icmpv6.h> | 31 | #include <linux/icmpv6.h> |
| 32 | #include <linux/slab.h> | 32 | #include <linux/slab.h> |
| 33 | #include <linux/export.h> | ||
| 33 | 34 | ||
| 34 | #include <net/dst.h> | 35 | #include <net/dst.h> |
| 35 | #include <net/sock.h> | 36 | #include <net/sock.h> |
diff --git a/net/ipv6/exthdrs_core.c b/net/ipv6/exthdrs_core.c index 14ed0a955b56..37f548b7f6dc 100644 --- a/net/ipv6/exthdrs_core.c +++ b/net/ipv6/exthdrs_core.c | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | * IPv6 library code, needed by static components when full IPv6 support is | 2 | * IPv6 library code, needed by static components when full IPv6 support is |
| 3 | * not configured or static. | 3 | * not configured or static. |
| 4 | */ | 4 | */ |
| 5 | #include <linux/export.h> | ||
| 5 | #include <net/ipv6.h> | 6 | #include <net/ipv6.h> |
| 6 | 7 | ||
| 7 | /* | 8 | /* |
diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c index 34d244df907d..295571576f83 100644 --- a/net/ipv6/fib6_rules.c +++ b/net/ipv6/fib6_rules.c | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | */ | 14 | */ |
| 15 | 15 | ||
| 16 | #include <linux/netdevice.h> | 16 | #include <linux/netdevice.h> |
| 17 | #include <linux/export.h> | ||
| 17 | 18 | ||
| 18 | #include <net/fib_rules.h> | 19 | #include <net/fib_rules.h> |
| 19 | #include <net/ipv6.h> | 20 | #include <net/ipv6.h> |
diff --git a/net/ipv6/ip6_flowlabel.c b/net/ipv6/ip6_flowlabel.c index 543039450193..4566dbd916d3 100644 --- a/net/ipv6/ip6_flowlabel.c +++ b/net/ipv6/ip6_flowlabel.c | |||
| @@ -21,6 +21,7 @@ | |||
| 21 | #include <linux/proc_fs.h> | 21 | #include <linux/proc_fs.h> |
| 22 | #include <linux/seq_file.h> | 22 | #include <linux/seq_file.h> |
| 23 | #include <linux/slab.h> | 23 | #include <linux/slab.h> |
| 24 | #include <linux/export.h> | ||
| 24 | 25 | ||
| 25 | #include <net/net_namespace.h> | 26 | #include <net/net_namespace.h> |
| 26 | #include <net/sock.h> | 27 | #include <net/sock.h> |
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c index def0538e2413..449a9185b8f2 100644 --- a/net/ipv6/ip6mr.c +++ b/net/ipv6/ip6mr.c | |||
| @@ -51,6 +51,7 @@ | |||
| 51 | #include <linux/pim.h> | 51 | #include <linux/pim.h> |
| 52 | #include <net/addrconf.h> | 52 | #include <net/addrconf.h> |
| 53 | #include <linux/netfilter_ipv6.h> | 53 | #include <linux/netfilter_ipv6.h> |
| 54 | #include <linux/export.h> | ||
| 54 | #include <net/ip6_checksum.h> | 55 | #include <net/ip6_checksum.h> |
| 55 | 56 | ||
| 56 | struct mr6_table { | 57 | struct mr6_table { |
diff --git a/net/ipv6/netfilter.c b/net/ipv6/netfilter.c index 30fcee465448..db31561cc8df 100644 --- a/net/ipv6/netfilter.c +++ b/net/ipv6/netfilter.c | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | #include <linux/ipv6.h> | 3 | #include <linux/ipv6.h> |
| 4 | #include <linux/netfilter.h> | 4 | #include <linux/netfilter.h> |
| 5 | #include <linux/netfilter_ipv6.h> | 5 | #include <linux/netfilter_ipv6.h> |
| 6 | #include <linux/export.h> | ||
| 6 | #include <net/dst.h> | 7 | #include <net/dst.h> |
| 7 | #include <net/ipv6.h> | 8 | #include <net/ipv6.h> |
| 8 | #include <net/ip6_route.h> | 9 | #include <net/ip6_route.h> |
| @@ -100,9 +101,16 @@ static int nf_ip6_route(struct net *net, struct dst_entry **dst, | |||
| 100 | .pinet6 = (struct ipv6_pinfo *) &fake_pinfo, | 101 | .pinet6 = (struct ipv6_pinfo *) &fake_pinfo, |
| 101 | }; | 102 | }; |
| 102 | const void *sk = strict ? &fake_sk : NULL; | 103 | const void *sk = strict ? &fake_sk : NULL; |
| 103 | 104 | struct dst_entry *result; | |
| 104 | *dst = ip6_route_output(net, sk, &fl->u.ip6); | 105 | int err; |
| 105 | return (*dst)->error; | 106 | |
| 107 | result = ip6_route_output(net, sk, &fl->u.ip6); | ||
| 108 | err = result->error; | ||
| 109 | if (err) | ||
| 110 | dst_release(result); | ||
| 111 | else | ||
| 112 | *dst = result; | ||
| 113 | return err; | ||
| 106 | } | 114 | } |
| 107 | 115 | ||
| 108 | __sum16 nf_ip6_checksum(struct sk_buff *skb, unsigned int hook, | 116 | __sum16 nf_ip6_checksum(struct sk_buff *skb, unsigned int hook, |
diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c index e8762c73b170..38f00b0298d3 100644 --- a/net/ipv6/netfilter/nf_conntrack_reasm.c +++ b/net/ipv6/netfilter/nf_conntrack_reasm.c | |||
| @@ -182,7 +182,6 @@ fq_find(__be32 id, u32 user, struct in6_addr *src, struct in6_addr *dst) | |||
| 182 | return container_of(q, struct nf_ct_frag6_queue, q); | 182 | return container_of(q, struct nf_ct_frag6_queue, q); |
| 183 | 183 | ||
| 184 | oom: | 184 | oom: |
| 185 | pr_debug("Can't alloc new queue\n"); | ||
| 186 | return NULL; | 185 | return NULL; |
| 187 | } | 186 | } |
| 188 | 187 | ||
| @@ -370,10 +369,10 @@ nf_ct_frag6_reasm(struct nf_ct_frag6_queue *fq, struct net_device *dev) | |||
| 370 | struct sk_buff *clone; | 369 | struct sk_buff *clone; |
| 371 | int i, plen = 0; | 370 | int i, plen = 0; |
| 372 | 371 | ||
| 373 | if ((clone = alloc_skb(0, GFP_ATOMIC)) == NULL) { | 372 | clone = alloc_skb(0, GFP_ATOMIC); |
| 374 | pr_debug("Can't alloc skb\n"); | 373 | if (clone == NULL) |
| 375 | goto out_oom; | 374 | goto out_oom; |
| 376 | } | 375 | |
| 377 | clone->next = head->next; | 376 | clone->next = head->next; |
| 378 | head->next = clone; | 377 | head->next = clone; |
| 379 | skb_shinfo(clone)->frag_list = skb_shinfo(head)->frag_list; | 378 | skb_shinfo(clone)->frag_list = skb_shinfo(head)->frag_list; |
diff --git a/net/ipv6/proc.c b/net/ipv6/proc.c index 18ff5df7ec02..1008ce94bc33 100644 --- a/net/ipv6/proc.c +++ b/net/ipv6/proc.c | |||
| @@ -21,6 +21,7 @@ | |||
| 21 | #include <linux/proc_fs.h> | 21 | #include <linux/proc_fs.h> |
| 22 | #include <linux/seq_file.h> | 22 | #include <linux/seq_file.h> |
| 23 | #include <linux/stddef.h> | 23 | #include <linux/stddef.h> |
| 24 | #include <linux/export.h> | ||
| 24 | #include <net/net_namespace.h> | 25 | #include <net/net_namespace.h> |
| 25 | #include <net/ip.h> | 26 | #include <net/ip.h> |
| 26 | #include <net/sock.h> | 27 | #include <net/sock.h> |
diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c index 6f7824e1cea4..331af3b882ac 100644 --- a/net/ipv6/raw.c +++ b/net/ipv6/raw.c | |||
| @@ -61,6 +61,7 @@ | |||
| 61 | 61 | ||
| 62 | #include <linux/proc_fs.h> | 62 | #include <linux/proc_fs.h> |
| 63 | #include <linux/seq_file.h> | 63 | #include <linux/seq_file.h> |
| 64 | #include <linux/export.h> | ||
| 64 | 65 | ||
| 65 | static struct raw_hashinfo raw_v6_hashinfo = { | 66 | static struct raw_hashinfo raw_v6_hashinfo = { |
| 66 | .lock = __RW_LOCK_UNLOCKED(raw_v6_hashinfo.lock), | 67 | .lock = __RW_LOCK_UNLOCKED(raw_v6_hashinfo.lock), |
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c index cc22099ac8b6..dfb164e9051a 100644 --- a/net/ipv6/reassembly.c +++ b/net/ipv6/reassembly.c | |||
| @@ -42,6 +42,7 @@ | |||
| 42 | #include <linux/jhash.h> | 42 | #include <linux/jhash.h> |
| 43 | #include <linux/skbuff.h> | 43 | #include <linux/skbuff.h> |
| 44 | #include <linux/slab.h> | 44 | #include <linux/slab.h> |
| 45 | #include <linux/export.h> | ||
| 45 | 46 | ||
| 46 | #include <net/sock.h> | 47 | #include <net/sock.h> |
| 47 | #include <net/snmp.h> | 48 | #include <net/snmp.h> |
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 57b82dc1ae91..8473016bba4a 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c | |||
| @@ -26,6 +26,7 @@ | |||
| 26 | 26 | ||
| 27 | #include <linux/capability.h> | 27 | #include <linux/capability.h> |
| 28 | #include <linux/errno.h> | 28 | #include <linux/errno.h> |
| 29 | #include <linux/export.h> | ||
| 29 | #include <linux/types.h> | 30 | #include <linux/types.h> |
| 30 | #include <linux/times.h> | 31 | #include <linux/times.h> |
| 31 | #include <linux/socket.h> | 32 | #include <linux/socket.h> |
diff --git a/net/ipv6/sysctl_net_ipv6.c b/net/ipv6/sysctl_net_ipv6.c index 6dcf5e7d661b..166a57c47d39 100644 --- a/net/ipv6/sysctl_net_ipv6.c +++ b/net/ipv6/sysctl_net_ipv6.c | |||
| @@ -10,6 +10,7 @@ | |||
| 10 | #include <linux/in6.h> | 10 | #include <linux/in6.h> |
| 11 | #include <linux/ipv6.h> | 11 | #include <linux/ipv6.h> |
| 12 | #include <linux/slab.h> | 12 | #include <linux/slab.h> |
| 13 | #include <linux/export.h> | ||
| 13 | #include <net/ndisc.h> | 14 | #include <net/ndisc.h> |
| 14 | #include <net/ipv6.h> | 15 | #include <net/ipv6.h> |
| 15 | #include <net/addrconf.h> | 16 | #include <net/addrconf.h> |
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 10b2b3165a1a..36131d122a6f 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c | |||
| @@ -2161,12 +2161,18 @@ out: | |||
| 2161 | return 0; | 2161 | return 0; |
| 2162 | } | 2162 | } |
| 2163 | 2163 | ||
| 2164 | static const struct file_operations tcp6_afinfo_seq_fops = { | ||
| 2165 | .owner = THIS_MODULE, | ||
| 2166 | .open = tcp_seq_open, | ||
| 2167 | .read = seq_read, | ||
| 2168 | .llseek = seq_lseek, | ||
| 2169 | .release = seq_release_net | ||
| 2170 | }; | ||
| 2171 | |||
| 2164 | static struct tcp_seq_afinfo tcp6_seq_afinfo = { | 2172 | static struct tcp_seq_afinfo tcp6_seq_afinfo = { |
| 2165 | .name = "tcp6", | 2173 | .name = "tcp6", |
| 2166 | .family = AF_INET6, | 2174 | .family = AF_INET6, |
| 2167 | .seq_fops = { | 2175 | .seq_fops = &tcp6_afinfo_seq_fops, |
| 2168 | .owner = THIS_MODULE, | ||
| 2169 | }, | ||
| 2170 | .seq_ops = { | 2176 | .seq_ops = { |
| 2171 | .show = tcp6_seq_show, | 2177 | .show = tcp6_seq_show, |
| 2172 | }, | 2178 | }, |
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index f4ca0a5b3457..846f4757eb8d 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c | |||
| @@ -1424,13 +1424,19 @@ int udp6_seq_show(struct seq_file *seq, void *v) | |||
| 1424 | return 0; | 1424 | return 0; |
| 1425 | } | 1425 | } |
| 1426 | 1426 | ||
| 1427 | static const struct file_operations udp6_afinfo_seq_fops = { | ||
| 1428 | .owner = THIS_MODULE, | ||
| 1429 | .open = udp_seq_open, | ||
| 1430 | .read = seq_read, | ||
| 1431 | .llseek = seq_lseek, | ||
| 1432 | .release = seq_release_net | ||
| 1433 | }; | ||
| 1434 | |||
| 1427 | static struct udp_seq_afinfo udp6_seq_afinfo = { | 1435 | static struct udp_seq_afinfo udp6_seq_afinfo = { |
| 1428 | .name = "udp6", | 1436 | .name = "udp6", |
| 1429 | .family = AF_INET6, | 1437 | .family = AF_INET6, |
| 1430 | .udp_table = &udp_table, | 1438 | .udp_table = &udp_table, |
| 1431 | .seq_fops = { | 1439 | .seq_fops = &udp6_afinfo_seq_fops, |
| 1432 | .owner = THIS_MODULE, | ||
| 1433 | }, | ||
| 1434 | .seq_ops = { | 1440 | .seq_ops = { |
| 1435 | .show = udp6_seq_show, | 1441 | .show = udp6_seq_show, |
| 1436 | }, | 1442 | }, |
diff --git a/net/ipv6/udplite.c b/net/ipv6/udplite.c index 986c4de5292e..1d08e21d9f69 100644 --- a/net/ipv6/udplite.c +++ b/net/ipv6/udplite.c | |||
| @@ -11,6 +11,7 @@ | |||
| 11 | * as published by the Free Software Foundation; either version | 11 | * as published by the Free Software Foundation; either version |
| 12 | * 2 of the License, or (at your option) any later version. | 12 | * 2 of the License, or (at your option) any later version. |
| 13 | */ | 13 | */ |
| 14 | #include <linux/export.h> | ||
| 14 | #include "udp_impl.h" | 15 | #include "udp_impl.h" |
| 15 | 16 | ||
| 16 | static int udplitev6_rcv(struct sk_buff *skb) | 17 | static int udplitev6_rcv(struct sk_buff *skb) |
| @@ -93,13 +94,20 @@ void udplitev6_exit(void) | |||
| 93 | } | 94 | } |
| 94 | 95 | ||
| 95 | #ifdef CONFIG_PROC_FS | 96 | #ifdef CONFIG_PROC_FS |
| 97 | |||
| 98 | static const struct file_operations udplite6_afinfo_seq_fops = { | ||
| 99 | .owner = THIS_MODULE, | ||
| 100 | .open = udp_seq_open, | ||
| 101 | .read = seq_read, | ||
| 102 | .llseek = seq_lseek, | ||
| 103 | .release = seq_release_net | ||
| 104 | }; | ||
| 105 | |||
| 96 | static struct udp_seq_afinfo udplite6_seq_afinfo = { | 106 | static struct udp_seq_afinfo udplite6_seq_afinfo = { |
| 97 | .name = "udplite6", | 107 | .name = "udplite6", |
| 98 | .family = AF_INET6, | 108 | .family = AF_INET6, |
| 99 | .udp_table = &udplite_table, | 109 | .udp_table = &udplite_table, |
| 100 | .seq_fops = { | 110 | .seq_fops = &udplite6_afinfo_seq_fops, |
| 101 | .owner = THIS_MODULE, | ||
| 102 | }, | ||
| 103 | .seq_ops = { | 111 | .seq_ops = { |
| 104 | .show = udp6_seq_show, | 112 | .show = udp6_seq_show, |
| 105 | }, | 113 | }, |
diff --git a/net/ipv6/xfrm6_state.c b/net/ipv6/xfrm6_state.c index 248f0b2a7ee9..f2d72b8a3faa 100644 --- a/net/ipv6/xfrm6_state.c +++ b/net/ipv6/xfrm6_state.c | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | #include <linux/pfkeyv2.h> | 15 | #include <linux/pfkeyv2.h> |
| 16 | #include <linux/ipsec.h> | 16 | #include <linux/ipsec.h> |
| 17 | #include <linux/netfilter_ipv6.h> | 17 | #include <linux/netfilter_ipv6.h> |
| 18 | #include <linux/export.h> | ||
| 18 | #include <net/dsfield.h> | 19 | #include <net/dsfield.h> |
| 19 | #include <net/ipv6.h> | 20 | #include <net/ipv6.h> |
| 20 | #include <net/addrconf.h> | 21 | #include <net/addrconf.h> |
