zephyr/net
Sebastien Griffoul fb8d7625d1 net: ipv6: Fix net_set_mac function
The ethernet driver calls net_set_mac before net_init is
called (ie before the uip stack has been fully initialized).
Unfortunately net_set_mac calls the function uip_ds6_set_lladdr.
Therefore this function is called before uip_ds6_init: this is an
issue as uip_ds6_set_lladdr is setting some static data which are
going to be erased by uip_ds6_init. In some case it could even lead
to a system hang due to a timer set twice.

To fix this issue net_set_mac should check whether net_init has been
already called. If not net_set_mac should simply copies the mac
address into uip_lladdr. Indeed uip_ds6_init automatically calls
uip_ds6_set_lladdr for the address stored into uip_lladdr.

Change-Id: Ifbcb07e7cd493b6284a85d70f2439d434cebbb00
Signed-off-by: Sebastien Griffoul <sebastien.griffoul@intel.com>
2016-05-26 12:24:43 +00:00
..
bluetooth Cleanup whitespace in Kconfig files 2016-05-25 13:28:07 -05:00
ip net: ipv6: Fix net_set_mac function 2016-05-26 12:24:43 +00:00
Kconfig net: buf: Fix net buf debug 2016-02-05 20:24:47 -05:00
Makefile net: Add initial generic buffer implementation 2016-02-05 20:24:38 -05:00
buf.c net: buf: Add net_buf_pull_le32() helper API 2016-05-15 19:39:14 +00:00