On Mon, Sep 24, 2018 at 03:34:59AM +0300, Artturi Alm wrote:
> On Sat, Nov 29, 2014 at 09:42:51PM +0100, Mark Kettenis wrote:
> > Recent Oracle SPARC machines have a USB gadget to talk to the Service
> > Processor (ILOM).  This gadget supports both RNDIS and CDC Ethernet.
> > The RNDIS bits uncovered a bug in urndis(4).  When urndis_ctrl_set()
> > sets up the REMOTE_NDIS_SET_MSG command it sets up msg->rm_infobuflen,
> > it subsequently overwrites its contents.  Apparently many RNDIS
> > devices don't care, but this hardware sends a response back that
> > indicates the command wasn't accepted.  Diff below fixes this problem.
> > It matches what Linux does.
> > 
> > Unfortunately, this isn't enough to make the gadget work in RNDIS mode.
> > 
> > I'd appreciate it if people using urndis(4) could test this diff.
> > 
> 
> Hi,
> 
> just found your mail, i think urndis(4) is not entirely written with
> these in mind:
>       defined(__STRICT_ALIGNMENT) || _BYTE_ORDER != _LITTLE_ENDIAN
> 
> did you ever try with a diff like below?
> 
> -Artturi
> 

sorry for the 'spam', on a second read of your message, i think it might
be just more strict than ie. android, not allowing the _SET_MSG from
urndis_attach(), because it's "out-of-order" with regards to msg sent
by urndis_ctrl_init(). if it's not in the "spec", atleast MS[0] does
show things done differently, == init first before setting data packet
filter.

-Artturi

[0]:
https://docs.microsoft.com/en-us/windows-hardware/drivers/network/example-connectionless--802-3--initialization-sequence

Reply via email to