|
@@ -1248,7 +1248,7 @@ ip4ip6_tnl_xmit(struct sk_buff *skb, struct net_device *dev)
|
|
fl6.flowi6_proto = IPPROTO_IPIP;
|
|
fl6.flowi6_proto = IPPROTO_IPIP;
|
|
fl6.daddr = key->u.ipv6.dst;
|
|
fl6.daddr = key->u.ipv6.dst;
|
|
fl6.flowlabel = key->label;
|
|
fl6.flowlabel = key->label;
|
|
- dsfield = ip6_tclass(key->label);
|
|
|
|
|
|
+ dsfield = key->tos;
|
|
} else {
|
|
} else {
|
|
if (!(t->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
|
|
if (!(t->parms.flags & IP6_TNL_F_IGN_ENCAP_LIMIT))
|
|
encap_limit = t->parms.encap_limit;
|
|
encap_limit = t->parms.encap_limit;
|
|
@@ -1319,7 +1319,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, struct net_device *dev)
|
|
fl6.flowi6_proto = IPPROTO_IPV6;
|
|
fl6.flowi6_proto = IPPROTO_IPV6;
|
|
fl6.daddr = key->u.ipv6.dst;
|
|
fl6.daddr = key->u.ipv6.dst;
|
|
fl6.flowlabel = key->label;
|
|
fl6.flowlabel = key->label;
|
|
- dsfield = ip6_tclass(key->label);
|
|
|
|
|
|
+ dsfield = key->tos;
|
|
} else {
|
|
} else {
|
|
offset = ip6_tnl_parse_tlv_enc_lim(skb, skb_network_header(skb));
|
|
offset = ip6_tnl_parse_tlv_enc_lim(skb, skb_network_header(skb));
|
|
/* ip6_tnl_parse_tlv_enc_lim() might have reallocated skb->head */
|
|
/* ip6_tnl_parse_tlv_enc_lim() might have reallocated skb->head */
|