diff options
author | Susant Sahani <susant@redhat.com> | 2014-05-10 00:11:32 +0530 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-05-13 00:27:19 -0400 |
commit | c8965932a2e3b70197ec02c6741c29460279e2a8 (patch) | |
tree | 6fc84b84873ecf41026975b784375ffc92cf753f /net | |
parent | 1c3639005f48492e5f2d965779efd814e80f8b15 (diff) | |
download | linux-c8965932a2e3b70197ec02c6741c29460279e2a8.tar.gz linux-c8965932a2e3b70197ec02c6741c29460279e2a8.tar.bz2 linux-c8965932a2e3b70197ec02c6741c29460279e2a8.zip |
ip6_tunnel: fix potential NULL pointer dereference
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 <susant@redhat.com>
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/ip6_tunnel.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c index b05b609f69d1..f6a66bb4114d 100644 --- a/net/ipv6/ip6_tunnel.c +++ b/net/ipv6/ip6_tunnel.c @@ -1557,7 +1557,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]); |