OSDN Git Service

ipv6: fix NULL dereference in udp6_ufo_fragment()
authorJason Wang <jasowang@redhat.com>
Sun, 9 Oct 2011 02:56:44 +0000 (10:56 +0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sun, 16 Oct 2011 21:14:54 +0000 (14:14 -0700)
commita1b7ab0836a56fa4c9578f88ba1042398d7d9316
tree5b5435397e994519b529c143c6960a35eb015308
parent00b8e8ceece20db990b1fbb11f1d6051a276436b
ipv6: fix NULL dereference in udp6_ufo_fragment()

This patch fixes the issue caused by ef81bb40bf15f350fe865f31fa42f1082772a576
which is a backport of upstream 87c48fa3b4630905f98268dde838ee43626a060c. The
problem does not exist in upstream.

We do not check whether route is attached before trying to assign ip
identification through route dest which lead NULL pointer dereference. This
happens when host bridge transmit a packet from guest.

This patch changes ipv6_select_ident() to accept in6_addr as its paramter and
fix the issue by using the destination address in ipv6 header when no route is
attached.

Signed-off-by: Jason Wang <jasowang@redhat.com>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
include/net/ipv6.h
net/ipv6/ip6_output.c
net/ipv6/udp.c