Re: [PATCH] IB/mad: In validate_mad, validate CM method and attribute

Jason Gunthorpe
2015-11-12T22:13:00Z

On Thu, Nov 12, 2015 at 08:30:55PM +0000, Hefty, Sean wrote:
> > > + /* CM attributes other than ClassPortInfo only use Send method
> > */
> > > + if (mad_hdr->mgmt_class == IB_MGMT_CLASS_CM) {
> > > + if (mad_hdr->attr_id != IB_MGMT_CLASSPORTINFO_ATTR_ID) {
> > > + if (mad_hdr->method != IB_MGMT_METHOD_SEND)
> > > + goto out;
> > > + } else if (mad_hdr->method != IB_MGMT_METHOD_GET_RESP)
> > > + goto out;
> > > + }
> >
> > Doesn't this invalidate a CM Get(ClassPortInfo) mad?
>
> I believe this does. I think you could remove the else if clause
> and let the received MAD get passed to the CM. It would be dropped
> there as unsupported. The net result is likely the same.

IIRC responding to Get(CPI) is mandatory?

Jason