mthca/mlx4: add check to validate output data sizes
[mirror/winof/.git] / hw / mthca / kernel / hca_verbs.c
index 3bd5acc..ca3acf5 100644 (file)
@@ -1266,6 +1266,11 @@ mlnx_ndi_modify_qp (
 \r
        HCA_ENTER(HCA_DBG_QP);\r
 \r
+       if (buf_size < sizeof(resp.qp_state)) {\r
+               status = IB_INVALID_PARAMETER;\r
+               goto out;\r
+       }\r
+\r
        /* imitate umv_buf */\r
        umv_buf.command = TRUE; /* special case for NDI. Usually it's TRUE */\r
        umv_buf.input_size = 0;\r
@@ -1279,6 +1284,7 @@ mlnx_ndi_modify_qp (
                *p_outbuf = resp.qp_state;\r
        }\r
 \r
+out:\r
        HCA_EXIT(HCA_DBG_QP);\r
        return status;\r
 }\r