mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-15 00:46:58 +02:00
sys-apps/file: Sync with Gentoo
It's from Gentoo commit ed468028e725c9580a7b2ee02d6b7b9375f7a0b2.
This commit is contained in:
parent
adb774f4a1
commit
b008eb9bf9
@ -1,4 +1,2 @@
|
|||||||
DIST file-5.43.tar.gz 1162786 BLAKE2B aaaf32c5054fb83e912af6656e5e67947f45576ec3711c7cba5531ed780e142a448580e0db41a828c8a3c5d2f1bf0c8ed49bc9688499caaae4a08baa16b3610c SHA512 9d02f4e7a69d90468d6bd35df5ec240ddee8c2408b7df3e73427d7f18736baf77db0638a1fe8283f4e6abd1d5ad653890ed3a5a0d48bb52d4023ca4070ecdf06
|
|
||||||
DIST file-5.43.tar.gz.asc 195 BLAKE2B d7f83b3e21d1390467989f8870e36daa48ebb8c5ac7ab8dc6d667a65d10561126d32cfc5ef3d81a130990b3e46bcba9b5e03f0a7dd169782351b02cebec2471f SHA512 c565958840f2f5c62821cd08d4149ec97c574232913ec00400473364e160250cfaced8c715e109c4c617359e33d2470f7ca6af1891cbdf994329e890f90c8be3
|
|
||||||
DIST file-5.44.tar.gz 1186437 BLAKE2B a90ccae738a95315d75a0aaee7bbff3624425cc9267daf18ba9147b7c9b9ebfb31288b54c63a73e4695eca0e876f206e40bcb81c422f1bf572b976e753b25a42 SHA512 26c3b9c7a6950649d0b2de896bfeca54289febe4cd487c0f91aa6ff1857fa49f9077f8738a17b86100125668a31dae05b586615c564f78da47ac20a1e4a74f63
|
DIST file-5.44.tar.gz 1186437 BLAKE2B a90ccae738a95315d75a0aaee7bbff3624425cc9267daf18ba9147b7c9b9ebfb31288b54c63a73e4695eca0e876f206e40bcb81c422f1bf572b976e753b25a42 SHA512 26c3b9c7a6950649d0b2de896bfeca54289febe4cd487c0f91aa6ff1857fa49f9077f8738a17b86100125668a31dae05b586615c564f78da47ac20a1e4a74f63
|
||||||
DIST file-5.44.tar.gz.asc 195 BLAKE2B a0905d42fec0fa052d75fb5b267c6ae223176451c0f1d3346006d4b760c3d858f2dcda5f0a30c6aa4b09b5afee427b75bc4debd5033d978f39dc1da01d3e1bd1 SHA512 1a4dc39283f4859581441aa35b3ed72b323c4e05ca0960d17126d1b9ec18465c695c0545e24f09f8437a60ab52e582be67b6cbbc656bbb676de00148c3644d23
|
DIST file-5.44.tar.gz.asc 195 BLAKE2B a0905d42fec0fa052d75fb5b267c6ae223176451c0f1d3346006d4b760c3d858f2dcda5f0a30c6aa4b09b5afee427b75bc4debd5033d978f39dc1da01d3e1bd1 SHA512 1a4dc39283f4859581441aa35b3ed72b323c4e05ca0960d17126d1b9ec18465c695c0545e24f09f8437a60ab52e582be67b6cbbc656bbb676de00148c3644d23
|
||||||
|
@ -1,162 +0,0 @@
|
|||||||
# Copyright 1999-2022 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
|
||||||
DISTUTILS_OPTIONAL=1
|
|
||||||
PYTHON_COMPAT=( python3_{8..11} )
|
|
||||||
|
|
||||||
inherit distutils-r1 libtool toolchain-funcs multilib-minimal
|
|
||||||
|
|
||||||
if [[ ${PV} == 9999 ]] ; then
|
|
||||||
EGIT_REPO_URI="https://github.com/glensc/file.git"
|
|
||||||
inherit autotools git-r3
|
|
||||||
else
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/file.asc
|
|
||||||
inherit verify-sig
|
|
||||||
SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
|
|
||||||
SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )"
|
|
||||||
|
|
||||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
|
||||||
|
|
||||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
|
|
||||||
fi
|
|
||||||
|
|
||||||
DESCRIPTION="Identify a file's format by scanning binary data for patterns"
|
|
||||||
HOMEPAGE="https://www.darwinsys.com/file/"
|
|
||||||
|
|
||||||
LICENSE="BSD-2"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="bzip2 lzma python seccomp static-libs zlib"
|
|
||||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
|
|
||||||
lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
|
|
||||||
python? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )"
|
|
||||||
RDEPEND="${DEPEND}
|
|
||||||
python? ( !dev-python/python-magic )
|
|
||||||
seccomp? ( sys-libs/libseccomp[${MULTILIB_USEDEP}] )"
|
|
||||||
BDEPEND+="
|
|
||||||
python? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
${DISTUTILS_DEPS}
|
|
||||||
)"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}/file-5.43-portage-sandbox.patch" #713710 #728978
|
|
||||||
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
|
||||||
"${FILESDIR}/${P}-configure-clang16.patch"
|
|
||||||
)
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
|
|
||||||
if [[ ${PV} == 9999 ]] ; then
|
|
||||||
eautoreconf
|
|
||||||
else
|
|
||||||
elibtoolize
|
|
||||||
fi
|
|
||||||
|
|
||||||
# don't let python README kill main README, bug ##60043
|
|
||||||
mv python/README.md python/README.python.md || die
|
|
||||||
# bug #662090
|
|
||||||
sed 's@README.md@README.python.md@' -i python/setup.py || die
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
local myeconfargs=(
|
|
||||||
--enable-fsect-man5
|
|
||||||
$(use_enable bzip2 bzlib)
|
|
||||||
$(use_enable lzma xzlib)
|
|
||||||
$(use_enable seccomp libseccomp)
|
|
||||||
$(use_enable static-libs static)
|
|
||||||
$(use_enable zlib)
|
|
||||||
)
|
|
||||||
econf "${myeconfargs[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
build_src_configure() {
|
|
||||||
local myeconfargs=(
|
|
||||||
--disable-shared
|
|
||||||
--disable-libseccomp
|
|
||||||
--disable-bzlib
|
|
||||||
--disable-xzlib
|
|
||||||
--disable-zlib
|
|
||||||
)
|
|
||||||
|
|
||||||
econf_build "${myeconfargs[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
need_build_file() {
|
|
||||||
# when cross-compiling, we need to build up our own file
|
|
||||||
# because people often don't keep matching host/target
|
|
||||||
# file versions, bug #362941
|
|
||||||
tc-is-cross-compiler && ! has_version -b "~${CATEGORY}/${P}"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
local ECONF_SOURCE="${S}"
|
|
||||||
|
|
||||||
if need_build_file ; then
|
|
||||||
mkdir -p "${WORKDIR}"/build || die
|
|
||||||
cd "${WORKDIR}"/build || die
|
|
||||||
build_src_configure
|
|
||||||
fi
|
|
||||||
|
|
||||||
multilib-minimal_src_configure
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_compile() {
|
|
||||||
if multilib_is_native_abi ; then
|
|
||||||
emake
|
|
||||||
else
|
|
||||||
# bug #586444
|
|
||||||
emake -C src magic.h
|
|
||||||
emake -C src libmagic.la
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
if need_build_file ; then
|
|
||||||
# bug #586444
|
|
||||||
emake -C "${WORKDIR}"/build/src magic.h
|
|
||||||
emake -C "${WORKDIR}"/build/src file
|
|
||||||
local -x PATH="${WORKDIR}/build/src:${PATH}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
multilib-minimal_src_compile
|
|
||||||
|
|
||||||
if use python ; then
|
|
||||||
cd python || die
|
|
||||||
distutils-r1_src_compile
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install() {
|
|
||||||
if multilib_is_native_abi ; then
|
|
||||||
default
|
|
||||||
else
|
|
||||||
emake -C src install-{nodist_includeHEADERS,libLTLIBRARIES} DESTDIR="${D}"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_install_all() {
|
|
||||||
dodoc ChangeLog MAINT # README
|
|
||||||
|
|
||||||
# Required for `file -C`
|
|
||||||
insinto /usr/share/misc/magic
|
|
||||||
doins -r magic/Magdir/*
|
|
||||||
|
|
||||||
if use python ; then
|
|
||||||
cd python || die
|
|
||||||
distutils-r1_src_install
|
|
||||||
fi
|
|
||||||
|
|
||||||
find "${ED}" -type f -name "*.la" -delete || die
|
|
||||||
}
|
|
@ -1,11 +1,11 @@
|
|||||||
# Copyright 1999-2022 Gentoo Authors
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=8
|
EAPI=8
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
DISTUTILS_USE_PEP517=setuptools
|
||||||
DISTUTILS_OPTIONAL=1
|
DISTUTILS_OPTIONAL=1
|
||||||
PYTHON_COMPAT=( python3_{8..11} )
|
PYTHON_COMPAT=( python3_{9..11} )
|
||||||
|
|
||||||
inherit distutils-r1 libtool toolchain-funcs multilib-minimal
|
inherit distutils-r1 libtool toolchain-funcs multilib-minimal
|
||||||
|
|
||||||
@ -18,7 +18,7 @@ else
|
|||||||
SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
|
SRC_URI="ftp://ftp.astron.com/pub/file/${P}.tar.gz"
|
||||||
SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )"
|
SRC_URI+=" verify-sig? ( ftp://ftp.astron.com/pub/file/${P}.tar.gz.asc )"
|
||||||
|
|
||||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||||
|
|
||||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
|
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
|
||||||
fi
|
fi
|
||||||
@ -39,23 +39,28 @@ DEPEND="
|
|||||||
${PYTHON_DEPS}
|
${PYTHON_DEPS}
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||||
)
|
)
|
||||||
|
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
||||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
||||||
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
||||||
"
|
"
|
||||||
RDEPEND="${DEPEND}
|
RDEPEND="
|
||||||
|
${DEPEND}
|
||||||
python? ( !dev-python/python-magic )
|
python? ( !dev-python/python-magic )
|
||||||
seccomp? ( sys-libs/libseccomp[${MULTILIB_USEDEP}] )"
|
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
||||||
|
"
|
||||||
BDEPEND+="
|
BDEPEND+="
|
||||||
python? (
|
python? (
|
||||||
${PYTHON_DEPS}
|
${PYTHON_DEPS}
|
||||||
${DISTUTILS_DEPS}
|
${DISTUTILS_DEPS}
|
||||||
)"
|
)
|
||||||
|
"
|
||||||
|
|
||||||
PATCHES=(
|
PATCHES=(
|
||||||
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
||||||
"${FILESDIR}/file-5.43-portage-sandbox.patch" #889046
|
"${FILESDIR}/file-5.43-portage-sandbox.patch" #889046
|
||||||
"${FILESDIR}/file-5.44-limits-solaris.patch" # applied upstream
|
"${FILESDIR}/file-5.44-limits-solaris.patch" # applied upstream
|
||||||
"${FILESDIR}/file-5.44-seccomp-utimes.patch" # upstream
|
"${FILESDIR}/file-5.44-seccomp-utimes.patch" # upstream
|
||||||
|
"${FILESDIR}/file-5.44-decompress-empty.patch" # upstream
|
||||||
)
|
)
|
||||||
|
|
||||||
src_prepare() {
|
src_prepare() {
|
@ -1,11 +1,11 @@
|
|||||||
# Copyright 1999-2022 Gentoo Authors
|
# Copyright 1999-2023 Gentoo Authors
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
EAPI=8
|
EAPI=8
|
||||||
|
|
||||||
DISTUTILS_USE_PEP517=setuptools
|
DISTUTILS_USE_PEP517=setuptools
|
||||||
DISTUTILS_OPTIONAL=1
|
DISTUTILS_OPTIONAL=1
|
||||||
PYTHON_COMPAT=( python3_{8..11} )
|
PYTHON_COMPAT=( python3_{9..11} )
|
||||||
|
|
||||||
inherit distutils-r1 libtool toolchain-funcs multilib-minimal
|
inherit distutils-r1 libtool toolchain-funcs multilib-minimal
|
||||||
|
|
||||||
@ -39,17 +39,21 @@ DEPEND="
|
|||||||
${PYTHON_DEPS}
|
${PYTHON_DEPS}
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||||
)
|
)
|
||||||
|
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
||||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
||||||
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
||||||
"
|
"
|
||||||
RDEPEND="${DEPEND}
|
RDEPEND="
|
||||||
|
${DEPEND}
|
||||||
python? ( !dev-python/python-magic )
|
python? ( !dev-python/python-magic )
|
||||||
seccomp? ( sys-libs/libseccomp[${MULTILIB_USEDEP}] )"
|
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
||||||
|
"
|
||||||
BDEPEND+="
|
BDEPEND+="
|
||||||
python? (
|
python? (
|
||||||
${PYTHON_DEPS}
|
${PYTHON_DEPS}
|
||||||
${DISTUTILS_DEPS}
|
${DISTUTILS_DEPS}
|
||||||
)"
|
)
|
||||||
|
"
|
||||||
|
|
||||||
PATCHES=(
|
PATCHES=(
|
||||||
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
https://github.com/file/file/commit/4502517cc7316569d5902ab65c97b3b8e46f8a25
|
|
||||||
https://github.com/file/file/commit/8c845b7bbad085678695d3e70467b8eec3dfa7af
|
|
||||||
--- a/configure
|
|
||||||
+++ b/configure
|
|
||||||
@@ -14037,13 +14037,14 @@ else $as_nop
|
|
||||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
||||||
/* end confdefs.h. */
|
|
||||||
#include <time.h>
|
|
||||||
+#include <stdlib.h>
|
|
||||||
int
|
|
||||||
main (void)
|
|
||||||
{
|
|
||||||
#if !HAVE_DECL_DAYLIGHT
|
|
||||||
extern int daylight;
|
|
||||||
#endif
|
|
||||||
-atoi(daylight);
|
|
||||||
+daylight = atoi("1");
|
|
||||||
;
|
|
||||||
return 0;
|
|
||||||
}
|
|
126
sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.44-decompress-empty.patch
vendored
Normal file
126
sdk_container/src/third_party/portage-stable/sys-apps/file/files/file-5.44-decompress-empty.patch
vendored
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
https://bugs.astron.com/view.php?id=415
|
||||||
|
https://github.com/file/file/commit/1dd21dd360472d7b830825df8e40a06cdc1cbbcf
|
||||||
|
|
||||||
|
From 1dd21dd360472d7b830825df8e40a06cdc1cbbcf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Christos Zoulas <christos@zoulas.com>
|
||||||
|
Date: Sun, 8 Jan 2023 18:09:16 +0000
|
||||||
|
Subject: [PATCH] fix decompression always returning empty.
|
||||||
|
|
||||||
|
--- a/src/compress.c
|
||||||
|
+++ b/src/compress.c
|
||||||
|
@@ -609,6 +609,7 @@ uncompresszlib(const unsigned char *old, unsigned char **newch,
|
||||||
|
int rc;
|
||||||
|
z_stream z;
|
||||||
|
|
||||||
|
+ DPRINTF("builtin zlib decompression\n");
|
||||||
|
z.next_in = CCAST(Bytef *, old);
|
||||||
|
z.avail_in = CAST(uint32_t, *n);
|
||||||
|
z.next_out = *newch;
|
||||||
|
@@ -650,6 +651,7 @@ uncompressbzlib(const unsigned char *old, unsigned char **newch,
|
||||||
|
int rc;
|
||||||
|
bz_stream bz;
|
||||||
|
|
||||||
|
+ DPRINTF("builtin bzlib decompression\n");
|
||||||
|
memset(&bz, 0, sizeof(bz));
|
||||||
|
rc = BZ2_bzDecompressInit(&bz, 0, 0);
|
||||||
|
if (rc != BZ_OK)
|
||||||
|
@@ -690,6 +692,7 @@ uncompressxzlib(const unsigned char *old, unsigned char **newch,
|
||||||
|
int rc;
|
||||||
|
lzma_stream xz;
|
||||||
|
|
||||||
|
+ DPRINTF("builtin xzlib decompression\n");
|
||||||
|
memset(&xz, 0, sizeof(xz));
|
||||||
|
rc = lzma_auto_decoder(&xz, UINT64_MAX, 0);
|
||||||
|
if (rc != LZMA_OK)
|
||||||
|
@@ -729,6 +732,7 @@ uncompresszstd(const unsigned char *old, unsigned char **newch,
|
||||||
|
ZSTD_inBuffer in;
|
||||||
|
ZSTD_outBuffer out;
|
||||||
|
|
||||||
|
+ DPRINTF("builtin zstd decompression\n");
|
||||||
|
if ((zstd = ZSTD_createDStream()) == NULL) {
|
||||||
|
return makeerror(newch, n, "No ZSTD decompression stream, %s",
|
||||||
|
strerror(errno));
|
||||||
|
@@ -777,6 +781,7 @@ uncompresslzlib(const unsigned char *old, unsigned char **newch,
|
||||||
|
|
||||||
|
bufp = *newch;
|
||||||
|
|
||||||
|
+ DPRINTF("builtin lzlib decompression\n");
|
||||||
|
dec = LZ_decompress_open();
|
||||||
|
if (!dec) {
|
||||||
|
return makeerror(newch, n, "unable to allocate LZ_Decoder");
|
||||||
|
@@ -833,11 +838,13 @@ makeerror(unsigned char **buf, size_t *len, const char *fmt, ...)
|
||||||
|
va_list ap;
|
||||||
|
int rv;
|
||||||
|
|
||||||
|
+ DPRINTF("Makeerror %s\n", fmt);
|
||||||
|
free(*buf);
|
||||||
|
va_start(ap, fmt);
|
||||||
|
rv = vasprintf(&msg, fmt, ap);
|
||||||
|
va_end(ap);
|
||||||
|
if (rv < 0) {
|
||||||
|
+ DPRINTF("Makeerror failed");
|
||||||
|
*buf = NULL;
|
||||||
|
*len = 0;
|
||||||
|
return NODATA;
|
||||||
|
@@ -1048,7 +1055,7 @@ uncompressbuf(int fd, size_t bytes_max, size_t method, int nofork,
|
||||||
|
pid_t pid;
|
||||||
|
pid_t writepid = -1;
|
||||||
|
size_t i;
|
||||||
|
- ssize_t r;
|
||||||
|
+ ssize_t r, re;
|
||||||
|
char *const *args;
|
||||||
|
#ifdef HAVE_POSIX_SPAWNP
|
||||||
|
posix_spawn_file_actions_t fa;
|
||||||
|
@@ -1103,6 +1110,7 @@ uncompressbuf(int fd, size_t bytes_max, size_t method, int nofork,
|
||||||
|
|
||||||
|
handledesc(&fa, fd, fdp);
|
||||||
|
|
||||||
|
+ DPRINTF("Executing %s\n", compr[method].argv[0]);
|
||||||
|
status = posix_spawnp(&pid, compr[method].argv[0], &fa, NULL,
|
||||||
|
args, NULL);
|
||||||
|
|
||||||
|
@@ -1128,6 +1136,7 @@ uncompressbuf(int fd, size_t bytes_max, size_t method, int nofork,
|
||||||
|
* do not modify fdp[i][j].
|
||||||
|
*/
|
||||||
|
handledesc(NULL, fd, fdp);
|
||||||
|
+ DPRINTF("Executing %s\n", compr[method].argv[0]);
|
||||||
|
|
||||||
|
(void)execvp(compr[method].argv[0], args);
|
||||||
|
dprintf(STDERR_FILENO, "exec `%s' failed, %s",
|
||||||
|
@@ -1146,6 +1155,7 @@ uncompressbuf(int fd, size_t bytes_max, size_t method, int nofork,
|
||||||
|
if (writepid == (pid_t)-1) {
|
||||||
|
rv = makeerror(newch, n, "Write to child failed, %s",
|
||||||
|
strerror(errno));
|
||||||
|
+ DPRINTF("Write to child failed\n");
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
closefd(fdp[STDIN_FILENO], 1);
|
||||||
|
@@ -1153,6 +1163,7 @@ uncompressbuf(int fd, size_t bytes_max, size_t method, int nofork,
|
||||||
|
|
||||||
|
rv = OKDATA;
|
||||||
|
r = sread(fdp[STDOUT_FILENO][0], *newch, bytes_max, 0);
|
||||||
|
+ DPRINTF("read got %zd\n", r);
|
||||||
|
if (r < 0) {
|
||||||
|
rv = ERRDATA;
|
||||||
|
DPRINTF("Read stdout failed %d (%s)\n", fdp[STDOUT_FILENO][0],
|
||||||
|
@@ -1165,15 +1176,17 @@ uncompressbuf(int fd, size_t bytes_max, size_t method, int nofork,
|
||||||
|
* errors, otherwise we risk the child blocking and never
|
||||||
|
* exiting.
|
||||||
|
*/
|
||||||
|
+ DPRINTF("Closing stdout for bytes_max\n");
|
||||||
|
closefd(fdp[STDOUT_FILENO], 0);
|
||||||
|
goto ok;
|
||||||
|
}
|
||||||
|
- if ((r = sread(fdp[STDERR_FILENO][0], *newch, bytes_max, 0)) > 0) {
|
||||||
|
+ if ((re = sread(fdp[STDERR_FILENO][0], *newch, bytes_max, 0)) > 0) {
|
||||||
|
+ DPRINTF("Got stuff from stderr %s\n", *newch);
|
||||||
|
rv = ERRDATA;
|
||||||
|
r = filter_error(*newch, r);
|
||||||
|
goto ok;
|
||||||
|
}
|
||||||
|
- if (r == 0)
|
||||||
|
+ if (re == 0)
|
||||||
|
goto ok;
|
||||||
|
rv = makeerror(newch, n, "Read stderr failed, %s",
|
||||||
|
strerror(errno));
|
||||||
|
|
Loading…
Reference in New Issue
Block a user