Signed-off-by: Hal Rosenstock <hal@xxxxxxxxxxxx> --- diff --git a/opensm/osm_sa_multipath_record.c b/opensm/osm_sa_multipath_record.c index e89c93a..7083b04 100644 --- a/opensm/osm_sa_multipath_record.c +++ b/opensm/osm_sa_multipath_record.c @@ -1587,6 +1622,14 @@ void osm_mpr_rcv_process(IN void *context, IN void *data) } } + /* Make sure either none or both ServiceID parameters are supplied */ + if ((p_sa_mad->comp_mask & IB_MPR_COMPMASK_SERVICEID) != 0 && + (p_sa_mad->comp_mask & IB_MPR_COMPMASK_SERVICEID) != + IB_MPR_COMPMASK_SERVICEID) { + osm_sa_send_error(sa, p_madw, IB_SA_MAD_STATUS_INSUF_COMPS); + goto Exit; + } + cl_qlist_init(&pr_list); /* -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html