openwrtv4/package/system/opkg/patches
Jo-Philipp Wich e1d1c31890 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-27 09:50:00 +01:00
..
001-ship-pkg-m4.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
002-no-shave.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
004-host_cpu.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
007-force_static.patch opkg: set PKG_UPGRADE also when running scripts for the old package 2016-11-21 18:40:15 +01:00
009-remove-upgrade-all.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
011-old-config-location.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
012-strip-trailing-conffiles-whitespace.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
014-errors-to-stderr.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
020-avoid_getline.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
030-fix-double-free.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
040-wrap-descriptions-only-on-ttys.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
050-add-case-insensitive-flag.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
060-add-find-command.patch packages: clean up the package folder 2013-06-21 16:54:37 +00:00
070-use_external_gzip.patch opkg: vfork external gzip command to uncompress data 2016-12-27 09:50:00 +01:00
071-use_gzipped_pkg_list.patch opkg: vfork external gzip command to uncompress data 2016-12-27 09:50:00 +01:00
080-suppress-blank-package-fields.patch opkg: ignore empty fields in package lists 2013-10-14 08:09:58 +00:00
090-suppress-blank-provides-field.patch opkg: do not add blank "Provides:" fields to package metadata 2013-12-13 10:40:26 +00:00
100-add-force-checksum.patch opkg: introduce a --force-checksum cmdline flag to be ale to ignore mismatching md5sums 2014-05-14 11:19:07 +00:00
110-upgrade.patch opkg: set PKG_UPGRADE also when running scripts for the old package 2016-11-21 18:40:15 +01:00
200-usign_support.patch opkg: set PKG_UPGRADE also when running scripts for the old package 2016-11-21 18:40:15 +01:00
210-add-force-signature.patch opkg: add patch to circumvent signature checks on the command line 2015-04-06 19:39:22 +00:00
220-drop-release-support.patch opkg: vfork external gzip command to uncompress data 2016-12-27 09:50:00 +01:00
230-drop_md5_support.patch opkg: Fix handling of sha256sums for conffiles 2016-03-04 08:33:41 +00:00
240-fix-force-checksum-for-sha256.patch opkg: Fix --force-checksum when using SHA256 2015-06-05 14:12:45 +00:00
250-add-lists-dir-switch.patch opkg: expose lists_dir option as command line argument 2015-09-14 16:56:40 +00:00
260-add-print-package-size.patch opkg: Extend 'opkg list' command to optionally display package size 2015-09-16 09:37:39 +00:00
270-fix-use-after-free.patch opkg: fix use-after-free with duplicate packages on the command line 2016-04-23 14:03:50 +02:00
280-call-prerm-and-postrm-scripts-on-upgrade.patch opkg: run prerm scripts for the old version also on upgrade 2016-11-21 18:40:15 +01:00