Re: [PATCH v2 4/4] USB: cdc-acm: clean up no-union-descriptor handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 22, 2020 at 12:40:42PM +0200, Oliver Neukum wrote:
> Am Dienstag, den 22.09.2020, 09:05 +0200 schrieb Johan Hovold:
> 
> > The relevant commits are
> > 
> >   a2bfb4a346d2 ("USB: support for cdc-acm of single interface devices")      (2009)
> >   fd5054c169d2 ("USB: cdc_acm: Fix oops when Droids MuIn LCD is connected")  (2011)
> >   403dff4e2c94 ("USB: cdc-acm: check for valid interfaces")                  (2014) 
> > 
> > Before Greg added the sanity checks in that last commit, a broken
> > call-management descriptor referring to a non-existent interface would
> > cause a NULL-pointer dereference.
> 
> Yes.
> 
> > The second commit, adding support for a specific device, didn't fix that
> > problem generally
> 
> Yes
> 
> >  and only worked around it for one device by hardcoding
> > the data interface to match the control interface,
> 
> How do you know. It hardcoded the data interface. That it matches
> the control interface is a guess.

No, see below.

> >  thereby falling back
> > to the "combined-interface" probing you added in that first commit.
> 
> How do you know? They may or may not match. 

Heh. Did you actually read the commit message?

	"Add NO_DATA_INTERFACE quirk to tell the driver that "control"
	 and "data" interfaces are not separated for this device, which
	 prevents dereferencing a null pointer in the device probe
	 code."

Convinced yet?

Johan



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux