Chunked transfer decoding and improved FS access control with path normalization#3
Merged
Conversation
- support "Transfer-Encoding: chunked" in requests - rename _recv_payload to _recv_payload_st to remain consistent in naming internal states - remove unnecessary branch in response generation for image/jpeg content type - add new unit tests and functional test
- always use /lib for deployment to match the default mip installation path
- refine lexical path normalization to account for differences in default working directories between Unix and device runtimes; always treat the default working directory as a virtual root - return HTTP 403 (Forbidden) when accessing files outside configured directories served over HTTP - add unit and functional tests for access control and path normalization
- use __name__ for module-prefixed log messages - reduce log message lengths - lazy-load ssl library based on TLS setting
Create missing root directory for mip packages.
Optimize memory usage and replace ambiguous variable names (e.g. "mp_is_first" instead of "mp_first_part").
str.splitlines() may be unavailable in ESP8266 builds, (depending on MICROPY_PY_BUILTINS_STR_SPLITLINES). Replace its usage with manual line iteration and rstrip() to handle line endings.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New features:
Miscellaneous improvements: