summaryrefslogtreecommitdiff
path: root/net/ipv6
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2014-06-11 16:02:55 -0700
committerDavid S. Miller <davem@davemloft.net>2014-06-11 16:02:55 -0700
commit902455e00720018d1dbd38327c3fd5bda6d844ee (patch)
tree02fc906c5bc318220ad4827c6eac2521b9d1fbbf /net/ipv6
parent39f33367e420d88b3cbbd474e5bcc326338ef324 (diff)
parentc5b46160877a9bb23ab6f96fb666e7766f407704 (diff)
downloadlwn-902455e00720018d1dbd38327c3fd5bda6d844ee.tar.gz
lwn-902455e00720018d1dbd38327c3fd5bda6d844ee.zip
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: net/core/rtnetlink.c net/core/skbuff.c Both conflicts were very simple overlapping changes. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/output_core.c1
-rw-r--r--net/ipv6/sit.c4
2 files changed, 3 insertions, 2 deletions
diff --git a/net/ipv6/output_core.c b/net/ipv6/output_core.c
index ffa029305a09..5ec867e4a8b7 100644
--- a/net/ipv6/output_core.c
+++ b/net/ipv6/output_core.c
@@ -78,6 +78,7 @@ int __ip6_local_out(struct sk_buff *skb)
if (len > IPV6_MAXPLEN)
len = 0;
ipv6_hdr(skb)->payload_len = htons(len);
+ IP6CB(skb)->nhoff = offsetof(struct ipv6hdr, nexthdr);
return nf_hook(NFPROTO_IPV6, NF_INET_LOCAL_OUT, skb, NULL,
skb_dst(skb)->dev, dst_output);
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
index f4380041f5e7..4f408176dc64 100644
--- a/net/ipv6/sit.c
+++ b/net/ipv6/sit.c
@@ -560,12 +560,12 @@ static int ipip6_err(struct sk_buff *skb, u32 info)
if (type == ICMP_DEST_UNREACH && code == ICMP_FRAG_NEEDED) {
ipv4_update_pmtu(skb, dev_net(skb->dev), info,
- t->dev->ifindex, 0, IPPROTO_IPV6, 0);
+ t->parms.link, 0, IPPROTO_IPV6, 0);
err = 0;
goto out;
}
if (type == ICMP_REDIRECT) {
- ipv4_redirect(skb, dev_net(skb->dev), t->dev->ifindex, 0,
+ ipv4_redirect(skb, dev_net(skb->dev), t->parms.link, 0,
IPPROTO_IPV6, 0);
err = 0;
goto out;