Openwrt/package/system
Jo-Philipp Wich 0090adcd5c opkg: vfork external gzip command to uncompress data
Opkg's builtin decompression code is unsuitable to process nested archives as
it uses a single shared state and relies on undefined seek behaviour for pipes.

Rework the extraction logic to use the external gzip command as I/O filter for
decompressing data and remove the builtin inflate code entirely.

This shrinks the final opkg binary by about 4KB and results in less runtime
memory consumption due to efficient use of vfork() and less copy-on-write
operations in the forked child.

Rework by Felix: create a thread that relays data to the gzip process
instead of using a fragile poll loop

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-26 11:17:32 +01:00
..
ca-certificates treewide: clean up download hashes 2016-12-16 22:39:22 +01:00
fstools treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
fwtool fwtool: add utility for appending and extracting firmware metadata/signatures 2016-11-19 11:24:09 +01:00
lede-keyring treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
mountd treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
mtd
opkg opkg: vfork external gzip command to uncompress data 2016-12-26 11:17:32 +01:00
procd treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
rpcd treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
ubox treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
ubus treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
uci treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
usign treewide: clean up and unify PKG_VERSION for git based downloads 2016-12-22 16:42:21 +01:00
zram-swap