Add SimpleMDNS, IGMP, and .local lookup (#2582)

* Enable LWIP IGMP, MDNS internal server
* Enable MDNS lookup from LWIP DNS
* Add SimpleMDNS responder, small code and no malloc
* Ensure we copy out lwipopts in make-libpico

Adds a small wrapper around the LWIP-provided MDNS responder application.
Drop-in replacement in many basic cases for LEAmDNS.

For FreeRTOS it is important to not allocate memory on an LWIP callback.
LEAmDNS needs to do this to create response objects, leading to crashes.

Increase LWIP timers by bumping the LWIP_ARP number (as done before).

Replace ArduinoOTA LEAmDNS with SimpleMDNS and update a
HTTPUpdateServer example.
This commit was merged in pull request #2582.
This commit is contained in:
Earle F. Philhower, III
2024-11-07 10:09:44 -08:00
committed by GitHub
parent c4b6521849
commit f5c4136b94
39 changed files with 320 additions and 89 deletions
+1 -4
View File
@@ -28,10 +28,7 @@
#include <lwip/udp.h>
#include <include/UdpContext.h>
#if !defined(NO_GLOBAL_INSTANCES) && !defined(NO_GLOBAL_MDNS)
#include <LEAmDNS.h>
#endif
#include <SimpleMDNS.h>
#ifdef DEBUG_RP2040_CORE
#ifdef DEBUG_RP2040_PORT