mirror of
https://github.com/espressif/esp-protocols.git
synced 2025-11-02 15:41:38 +01:00
8a690503ed38e6791714f5453b2ca1d7f8941612
Original issue (data race when updating hostname): mdns_service_add() makes a copy of the local hostname and calls using the local copy mdns_service_add_for_host(). When mdns's hostname is updated the local copy gets out of sync. **API race issue**: Most of the current API correctly lock the mdns service, but sometimes unlocks it before sending an action to the action queue, so it's possible that the situation changes before the actual action takes place. **Fix**: After locking the mdns service, we proceed directly with updating internal structures and do not post actions into the action queue. **Fix wrtt hostname**: Use mdns_service_add_for_host(hostname=NULL) for all self hosted services. MAJOR CHANGE: Fixed mdns API issues when add/remove/update records from multiple threads This and the following commits fix the API race issues for these mdns APIs: * mdns_service_add_for_host * mdns_service_port_set_for_host * mdns_service_txt_set_for_host * mdns_service_txt_item_set_for_host_with_explicit_value_len * mdns_service_txt_item_remove_for_host * mdns_service_subtype_add_for_host * mdns_service_instance_name_set_for_host * mdns_service_remove_for_host * mdns_service_remove_all
Collection of protocol components for ESP-IDF
How to use
The ESP-Protocols repository contains a collection of protocol components for ESP-IDF. Additionally, each component is available in IDF Component Registry. Please refer to instructions in ESP-IDF
Components
esp_modem
- Brief introduction README
- Full html documentation
mDNS
- Brief introduction README
- Full html documentation(English)
- Full html documentation(Chinese)
esp_websocket_client
- Brief introduction README
- Full html documentation
ASIO port
- Brief introduction README
- Full html documentation
esp_mqtt_cxx
- Brief introduction README
- Full html documentation
console_simple_init
- Brief introduction README
console_cmd_ping
- Brief introduction README
console_cmd_ifconfig
- Brief introduction README
console_cmd_wifi
- Brief introduction README
ESP PPP Link (eppp)
- Brief introduction README
esp_wifi_remote
- Brief introduction README
mbedtls_cxx
- Brief introduction README
Languages
C
56.7%
C++
35.3%
Python
4.4%
CMake
2.4%
Shell
0.7%
Other
0.5%