From: Hannes Frederic Sowa Date: Sat, 11 Jun 2016 18:32:06 +0000 (+0200) Subject: ipv6: fix endianness error in icmpv6_err X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=2a6558eab644e3b0924935bd2b34d640580c691e;p=GitHub%2FLineageOS%2Fandroid_kernel_samsung_universal7580.git ipv6: fix endianness error in icmpv6_err IPv6 ping socket error handler doesn't correctly convert the new 32 bit mtu to host endianness before using. [Cherry-pick of net dcb94b88c09ce82a80e188d49bcffdc83ba215a6] Bug: 29370996 Change-Id: Idf475e2555252d91e1d3fa92071a661242780074 Cc: Lorenzo Colitti Fixes: 6d0bfe22611602f ("net: ipv6: Add IPv6 support to the ping socket.") Signed-off-by: Hannes Frederic Sowa Acked-by: Lorenzo Colitti Signed-off-by: David S. Miller --- diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c index adb715b22f7..b0220040ef2 100644 --- a/net/ipv6/icmp.c +++ b/net/ipv6/icmp.c @@ -96,7 +96,7 @@ static void icmpv6_err(struct sk_buff *skb, struct inet6_skb_parm *opt, if (!(type & ICMPV6_INFOMSG_MASK)) if (icmp6->icmp6_type == ICMPV6_ECHO_REQUEST) - ping_err(skb, offset, info); + ping_err(skb, offset, ntohl(info)); } static int icmpv6_rcv(struct sk_buff *skb);