diff mbox

[net] ipv6: fix endianness error in icmpv6_err

Message ID 1465669926-16272-1-git-send-email-hannes@stressinduktion.org
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Hannes Frederic Sowa June 11, 2016, 6:32 p.m. UTC
IPv6 ping socket error handler doesn't correctly convert the new 32 bit
mtu to host endianness before using.

Cc: Lorenzo Colitti <lorenzo@google.com>
Fixes: 6d0bfe22611602f ("net: ipv6: Add IPv6 support to the ping socket.")
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
---
 net/ipv6/icmp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Lorenzo Colitti June 12, 2016, 3:38 a.m. UTC | #1
On Sun, Jun 12, 2016 at 3:32 AM, Hannes Frederic Sowa
<hannes@stressinduktion.org> wrote:
> IPv6 ping socket error handler doesn't correctly convert the new 32 bit
> mtu to host endianness before using.
> ...
>         if (!(type & ICMPV6_INFOMSG_MASK))
>                 if (icmp6->icmp6_type == ICMPV6_ECHO_REQUEST)
> -                       ping_err(skb, offset, info);
> +                       ping_err(skb, offset, ntohl(info));
>  }

Acked-by: Lorenzo Colitti <lorenzo@google.com>
David Miller June 14, 2016, 7:25 p.m. UTC | #2
From: Hannes Frederic Sowa <hannes@stressinduktion.org>
Date: Sat, 11 Jun 2016 20:32:06 +0200

> IPv6 ping socket error handler doesn't correctly convert the new 32 bit
> mtu to host endianness before using.
> 
> Cc: Lorenzo Colitti <lorenzo@google.com>
> Fixes: 6d0bfe22611602f ("net: ipv6: Add IPv6 support to the ping socket.")
> Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>

Applied.
diff mbox

Patch

diff --git a/net/ipv6/icmp.c b/net/ipv6/icmp.c
index 4527285fcaa2c2..a4fa840769690a 100644
--- a/net/ipv6/icmp.c
+++ b/net/ipv6/icmp.c
@@ -98,7 +98,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);