lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] DHCP usage with latest git code version


From: Bram Peeters
Subject: Re: [lwip-users] DHCP usage with latest git code version
Date: Mon, 14 Sep 2015 12:40:52 +0000

Hi Sylvain, 

Sorry for the delay in responding, I took a slight detour running into ;p
 http://lists.gnu.org/archive/html/lwip-devel/2012-01/msg00018.html

Anyway, before diving into the dhcp problem again I synced my lwip to the 
latest sources (I was using something which was several weeks old at this 
point) but now it just works even if I disable LWIP_DHCP_CHECK_LINK_UP again. 

I am not sure which exact change did it (there were like 99 files which had 
changed), but it seems to be working now. 
( Before the it would be (and stay) in DHCP_STATE_OFF when I entered 
dhcp_network_changed, now it is in state DHCP_STATE_SELECTING. )


BTW 1 small bug in the current sources (don't really know where to report this 
so i will piggy back it here):
In tcp_out.c, function tcp_output_segment
There is (around lines 1261) :

#endif /* CHECKSUM_GEN_TCP */
}


should be 

}
#endif /* CHECKSUM_GEN_TCP */

Thank you for your help, 

Bram


-----Original Message-----
From: address@hidden [mailto:address@hidden On Behalf Of Sylvain Rochet
Sent: vrijdag 11 september 2015 11:56
To: Mailing list for lwIP users
Subject: Re: [lwip-users] DHCP usage with latest git code version

Hi Bram,

On Fri, Sep 11, 2015 at 11:48:33AM +0200, Sylvain Rochet wrote:
> Hi Bram,
> 
> On Fri, Sep 11, 2015 at 09:10:28AM +0000, Bram Peeters wrote:
> > Thanks for the clarification!
> > 
> > I had to add 
> > #define LWIP_DHCP_CHECK_LINK_UP     1
> > as well to make
> > 
> > > netif_set_up(&gnetif);
> > > dhcp_start(&gnetif);
> > > Then DHCP will start if netif is already "link up" or at the next "link  
> > > up" event.
> > 
> > work with the netif initially in link down Otherwise the DCHP state 
> > was in DHCP_STATE_OFF mode, and stayed in that mode when 
> > dhcp_network_changed(struct netif *netif) was called when link up 
> > occurred.
> 
> I don't agree. Only dhcp_release()/dhcp_stop() (and obviously initial
> state) switches DHCP to DHCP_STATE_OFF. (Or did you find a bug ?, if 
> so, please investigate a bit more about this issue ;-) )
> 
> The only difference LWIP_DHCP_CHECK_LINK_UP makes is that DHCP is not 
> trying to send discover frames if link is down and then wait for a 
> link up event, otherwise we are sending discover frames whatever the 
> current link state is. The dhcp_network_changed() call just speed it 
> up by cancelling retry timeout.
> 
> 
> Indeed, DHCP without LWIP_DHCP_CHECK_LINK_UP does not care about 
> current link state, I should have mentioned that. So it should work 
> whatever the current shape of your link up/down events handler is.

After thinking about it again. It looks like your lwIP timers(timeouts) are not 
working, which could be an issue with your port.

Sylvain

reply via email to

[Prev in Thread] Current Thread [Next in Thread]