Merge branch 'bugfix/netif_zero_init' into 'master'

Zero-fill netif on alloc

LwIP's `struct netif` was not zero-initialized after allocation, so `ipv6_addr_cb ` function pointer contained garbage. This caused a crash if the device was on an IPv6 capable network.

Fixes https://github.com/espressif/esp-idf/issues/133, https://github.com/espressif/esp-idf/issues/147, https://github.com/espressif/esp-idf/issues/142.

Source: https://github.com/espressif/esp-idf/pull/148

See merge request !289
pull/154/head
Ivan Grokhotkov 2016-12-08 10:02:15 +08:00
commit a00762f1f9
1 zmienionych plików z 1 dodań i 1 usunięć

Wyświetl plik

@ -64,7 +64,7 @@ esp_err_t tcpip_adapter_start(tcpip_adapter_if_t tcpip_if, uint8_t *mac, tcpip_a
}
if (esp_netif[tcpip_if] == NULL) {
esp_netif[tcpip_if] = malloc(sizeof(struct netif));
esp_netif[tcpip_if] = calloc(1, sizeof(*esp_netif[tcpip_if]));
if (esp_netif[tcpip_if] == NULL) {
return ESP_ERR_NO_MEM;
}