From: Susant Sahani Date: Fri, 9 May 2014 18:41:32 +0000 (+0530) Subject: ip6_tunnel: fix potential NULL pointer dereference X-Git-Tag: v3.12.21~6 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=166c6b578bc07449529aa40ba524c694c2fd1623;p=thirdparty%2Fkernel%2Fstable.git ip6_tunnel: fix potential NULL pointer dereference [ Upstream commit c8965932a2e3b70197ec02c6741c29460279e2a8 ] The function ip6_tnl_validate assumes that the rtnl attribute IFLA_IPTUN_PROTO always be filled . If this attribute is not filled by the userspace application kernel get crashed with NULL pointer dereference. This patch fixes the potential kernel crash when IFLA_IPTUN_PROTO is missing . Signed-off-by: Susant Sahani Acked-by: Thomas Graf Signed-off-by: David S. Miller Signed-off-by: Jiri Slaby --- diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c index c1e11b5d6ccc0..aac89c3c6af4c 100644 --- a/net/ipv6/ip6_tunnel.c +++ b/net/ipv6/ip6_tunnel.c @@ -1549,7 +1549,7 @@ static int ip6_tnl_validate(struct nlattr *tb[], struct nlattr *data[]) { u8 proto; - if (!data) + if (!data || !data[IFLA_IPTUN_PROTO]) return 0; proto = nla_get_u8(data[IFLA_IPTUN_PROTO]);