* The mdns responder has been reworked to lower stack and memory usage. This is
a variation on the upstream code, it use malloc whereas the upstream code uses
pools. The high stack usage of the mdns responder was problem for
esp-open-rtos, so we might have to maintain the differences for now.
* Improved lwip core locking, and lock checking. Upstream improvements, that
need some added support from esp-open-rtos specific code. More core lock is
performed when calling from the esp-open-rtos code now, so a little safer. The
checking is not enforced, but projects might see warning messages and might
want to look into them.
* The esp-open-rtos lwip support has been sync'ed with the new freertos port
included with lwip. There are still some minor differences.
* A few lwip timer bugs have been resolved. This might help resolve some issues.
* Plus it picks up all the other upstream fixes and improvements.
* The default lwip stack has been lowered from 768 words to 480 words,
due to the reduced stack usage by the mdns responder.
* wificfg: remove the AP WEP mode option
The WEP mode does not appear to be implement in the sdk for the AP mode, and
defaults to open when WEP is requested which is probably not intended. Remove
the WEP option from the wifi config interface.
* lwip: enable mdns dns queries.
* wificfg: support mDNS on the softAP interface.
This patch gets the newlib standard stream descriptors playing well with the
lwip socket descriptors and the spiffs file descriptors. The LWIP_SOCKET_OFFSET
is now defined to be 3, rather than zero, to avoid clashing with the standard
stream descriptors, and the SPIFFS_FILEHDL_OFFSET is bumped up to start after
the lwip descriptors.
It now accounts for the number of rx pool buffers used and the
available memory when deciding the number of ooseq buffers to retain.
Enable the TCP Selective ACK support which appears to help a lot on
lossy wifi when using the OOSEQ option.
With this option enabled some lwip input processing occurs in the pp task which
works well for some uses but some code uses a lot of stack (e.g. mdns) and will
overflow the pp task stask, or might unnecessarily slow the critical pp task,
so disable this by default and if not already defined.
Also reduces the IRAM footprint of the fatal exception handler, as only
the prelude (which disables interrupts & enables the flash mapping) is
in IRAM now.
Closes#54, relevant to #133.
Relies on global flags set when the user ISR is executing.
Unclear if this fixes any bugs as ISR code may not have been calling
into LWIP, but the previous implementation was broken.
mbedTLS version 2.1.0 (current stable)
Has some known issues/hacks:
* Entropy source not hooked in at all
* Linker script has a messy hack in it to store some (not all) data in
irom
This fixes a long-standing bug where build directories sometimes
expanded many levels deeper than they should have.
Component names can now no longer contains slashes (ie the component
name for 'extras/i2c' is now just 'i2c')
* This fixes the problem of axTLS symbols hmac_md5/hmac_sha1 having same
name as symbols in libwpa (which have incompatible signatures)
* Also allows for easier identification and piece-by-piece removal of
binary functions.
* Some libc symbols are not renamed, list is in lib/symbols_norename.txt