Discovered over on the dev-esp32-idf4 branch.
- Off by one error in loadLFS, leading to slight memory leak and
potential corruption.
- Insufficient return value check in loadLFS, where uzlib may return
one of two success conditions, one of which would result in an
out-of-bounds access and related pain.
- One case of a side effect within a lua_assert(), leading to
silently broken LFS image handling when compiling without asserts
enabled, the issue showing up as module names being shuffled around.
- Incorrect encoding of TValues in LFS when 64bit numbers in use.
LWIP_RAND() return type is int, value returned is sometimes negative.
This causes timer to sometimes (often) go outside of max_time, which in turn causes IGMP snoopers or IGMP routers to drop the subscription
Discovered over on the dev-esp32-idf4 branch.
- Off by one error in loadLFS, leading to slight memory leak and
potential corruption.
- Insufficient return value check in loadLFS, where uzlib may return
one of two success conditions, one of which would result in an
out-of-bounds access and related pain.
- One case of a side effect within a lua_assert(), leading to
silently broken LFS image handling when compiling without asserts
enabled, the issue showing up as module names being shuffled around.
- Incorrect encoding of TValues in LFS when 64bit numbers in use.
LWIP_RAND() return type is int, value returned is sometimes negative.
This causes timer to sometimes (often) go outside of max_time, which in turn causes IGMP snoopers or IGMP routers to drop the subscription
While we intend our release strategy to be that we just fast-forward our
`release` branch to `dev`, things have come a little off the wheels.
This is a "git merge -s recursive -X theirs" of `dev` into `release`
instead.