[haiku-development] Re: Network Issues. Part III. I think I found where the mousetrap is! ;-)

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 03 Dec 2009 15:38:03 +0100

Hi Siarzhuk,

Siarzhuk Zharski <zharik@xxxxxx> wrote:
> Well, I have tried with ENETUNREACH and become the same result. Than 
> I 
> tried to return B_OK and DHCP auto-configuration worked. Additional 
> tracing in datalink_is_local_address reports me, that the 
> "interface->address" for my SiS191 is NULL and _interface variable is 
> filled with my interface as "fallback case". Note, that in previous 
> cases that interface already has default auto-config address. I think 
> the way of this problem was following: Stack tries to send DHCP 
> discover 
> packet but becomes B_ERROR from the driver. This error provokes the 
> stack to allocate default auto-config address  for the interface. The 
> "mousetrap" is closed. :-\

I've changed it such that it now ignores error on sending the packets.
This should also solve the issue, and allows you to return a proper 
error code when sending actually failed.

> Probably this is a source of problem for following tickets:
> http://dev.haiku-os.org/ticket/2966  // DHCP leaves auto config IP 
> after 
> link up
> http://dev.haiku-os.org/ticket/4377 // broadcom570x: DHCP does not 
> work 
> when plugging in cable after boot

Thanks for those pointers!

> >> By the way, what you decide to do with broadcast flag in DHCP
> >> discover/request messages?
> > I think we should not set it by default, but rather fix receiving 
> > packets on unconfigured interfaces.
> I just thought that we can set it temporarily  as workaround until 
> the 
> normal solution will be implemented. ;-)

I've now implemented that incoming ethernet packets should always be 
retrieved by the unconfigured interface they were intended for in 
r34466.
That also solves the issue that temporary IP configurations weren't 
replaced after having plugged in a cable.

Bye,
   Axel.


Other related posts: