From: Jiri Benc jbenc@redhat.com
commit 3d6d30d60abb19ba9a20e53ce65b18a9c148fcd1 upstream.
ip6_route_output looks into different fields in the passed flowi6 structure, yet cxgbi passes garbage in nearly all those fields. Zero the structure out first.
Fixes: fc8d0590d9142 ("libcxgbi: Add ipv6 api to driver") Signed-off-by: Jiri Benc jbenc@redhat.com Signed-off-by: David S. Miller davem@davemloft.net Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org
--- drivers/scsi/cxgbi/libcxgbi.c | 1 + 1 file changed, 1 insertion(+)
--- a/drivers/scsi/cxgbi/libcxgbi.c +++ b/drivers/scsi/cxgbi/libcxgbi.c @@ -692,6 +692,7 @@ static struct rt6_info *find_route_ipv6( { struct flowi6 fl;
+ memset(&fl, 0, sizeof(fl)); if (saddr) memcpy(&fl.saddr, saddr, sizeof(struct in6_addr)); if (daddr)