X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=net%2Fipv4%2Fxfrm4_output.c;h=21832dfc376eb6746bd57a67058c6877e8a1bd24;hb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;hp=191cec718e95ac55cff60acfc16ca2b055e62f15;hpb=a2c21200f1c81b08cb55e417b68150bba439b646;p=linux-2.6.git diff --git a/net/ipv4/xfrm4_output.c b/net/ipv4/xfrm4_output.c index 191cec718..21832dfc3 100644 --- a/net/ipv4/xfrm4_output.c +++ b/net/ipv4/xfrm4_output.c @@ -58,8 +58,7 @@ static void xfrm4_encap(struct sk_buff *skb) if (!top_iph->frag_off) __ip_select_ident(top_iph, dst, 0); - /* TTL disclosed */ - top_iph->ttl = iph->ttl; + top_iph->ttl = dst_path_metric(dst, RTAX_HOPLIMIT); top_iph->saddr = x->props.saddr.a4; top_iph->daddr = x->id.daddr.a4; @@ -119,8 +118,7 @@ int xfrm4_output(struct sk_buff **pskb) xfrm4_encap(skb); - err = x->type->output(pskb); - skb = *pskb; + err = x->type->output(skb); if (err) goto error;