i40iw: Add missing NULL check for MPA private data
authorShiraz Saleem <shiraz.saleem@intel.com>
Mon, 22 Aug 2016 23:16:37 +0000 (18:16 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 7 Oct 2016 13:21:20 +0000 (15:21 +0200)
commite4df513333e73291e130a44dd0a4bd664d5ac6c4
tree31a8f7a9fa3b88b1c3ef17e8358ad3d43fc93059
parent0bdb4f53663f5b218f2db48d7344845e569b7169
i40iw: Add missing NULL check for MPA private data

commit 5dfd5e5e3bc68ab3912acc712c8180942094fc69 upstream.

Add NULL check for pdata and pdata->addr before the memcpy in
i40iw_form_cm_frame(). This fixes a NULL pointer de-reference
which occurs when the MPA private data pointer is NULL. Also
only copy pdata->size bytes in the memcpy to prevent reading
past the length of the private data buffer provided by upper layer.

Fixes: f27b4746f378 ("i40iw: add connection management code")
Reported-by: Stefan Assmann <sassmann@redhat.com>
Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/infiniband/hw/i40iw/i40iw_cm.c