Alternative: Filesystem API: Introduce pre_unzip_file
and unzip_file
filter hooks.
#4220
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.
This introduces two new filters:
pre_unzip_file
andunzip_file
.pre_unzip_file
allows overriding the unzipping logic with a custom implementation.unzip_file
allows filtering the result of unzipping. This can be used to perform malware scans, for example.Both filters pass the following:
string $file
- Full path and filename of ZIP archive.string $to
- Full path on the filesystem to extract archive to.string[] $needed_dirs
- A full list of required folders needed to be created.float|false $required_space
- The space required to unzip the file and copy its contents, with a 10% buffer. False ifdisk_free_space()
returnedfalse
.Trac ticket: https://core.trac.wordpress.org/ticket/37719