diff options
Diffstat (limited to 'net/ipv6/inet6_connection_sock.c')
| -rw-r--r-- | net/ipv6/inet6_connection_sock.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv6/inet6_connection_sock.c b/net/ipv6/inet6_connection_sock.c index eb2865d5ae28..827f41d1478b 100644 --- a/net/ipv6/inet6_connection_sock.c +++ b/net/ipv6/inet6_connection_sock.c | |||
| @@ -13,7 +13,6 @@ | |||
| 13 | * 2 of the License, or(at your option) any later version. | 13 | * 2 of the License, or(at your option) any later version. |
| 14 | */ | 14 | */ |
| 15 | 15 | ||
| 16 | #include <linux/config.h> | ||
| 17 | #include <linux/module.h> | 16 | #include <linux/module.h> |
| 18 | #include <linux/in6.h> | 17 | #include <linux/in6.h> |
| 19 | #include <linux/ipv6.h> | 18 | #include <linux/ipv6.h> |
| @@ -158,6 +157,7 @@ int inet6_csk_xmit(struct sk_buff *skb, int ipfragok) | |||
| 158 | fl.oif = sk->sk_bound_dev_if; | 157 | fl.oif = sk->sk_bound_dev_if; |
| 159 | fl.fl_ip_sport = inet->sport; | 158 | fl.fl_ip_sport = inet->sport; |
| 160 | fl.fl_ip_dport = inet->dport; | 159 | fl.fl_ip_dport = inet->dport; |
| 160 | security_sk_classify_flow(sk, &fl); | ||
| 161 | 161 | ||
| 162 | if (np->opt && np->opt->srcrt) { | 162 | if (np->opt && np->opt->srcrt) { |
| 163 | struct rt0_hdr *rt0 = (struct rt0_hdr *)np->opt->srcrt; | 163 | struct rt0_hdr *rt0 = (struct rt0_hdr *)np->opt->srcrt; |
| @@ -186,9 +186,7 @@ int inet6_csk_xmit(struct sk_buff *skb, int ipfragok) | |||
| 186 | return err; | 186 | return err; |
| 187 | } | 187 | } |
| 188 | 188 | ||
| 189 | ip6_dst_store(sk, dst, NULL); | 189 | __ip6_dst_store(sk, dst, NULL, NULL); |
| 190 | sk->sk_route_caps = dst->dev->features & | ||
| 191 | ~(NETIF_F_IP_CSUM | NETIF_F_TSO); | ||
| 192 | } | 190 | } |
| 193 | 191 | ||
| 194 | skb->dst = dst_clone(dst); | 192 | skb->dst = dst_clone(dst); |
