mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-23 22:51:03 +02:00
sys-apps/file: Sync with Gentoo
It's from Gentoo commit 0e92bbf0f0596a082f71e915fcea8f4477d7b659.
This commit is contained in:
parent
b4634b3551
commit
7bf5aa6edf
@ -1,4 +1,2 @@
|
|||||||
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.45.tar.gz 1246503 BLAKE2B 30fc77c091e6624f2e9a950f4c6fe69ea6aa46d4a8ad9f20d49320a3675617c5bfbc9ff1ebba5eeb2cf4435c38d71b47b8beeb5146c9f55fe3bac11fe65e89bd SHA512 12611a59ff766c22a55db4b4a9f80f95a0a2e916a1d8593612c6ead32c247102a8fdc23693c6bf81bda9b604d951a62c0051e91580b1b79e190a3504c0efc20a
|
DIST file-5.45.tar.gz 1246503 BLAKE2B 30fc77c091e6624f2e9a950f4c6fe69ea6aa46d4a8ad9f20d49320a3675617c5bfbc9ff1ebba5eeb2cf4435c38d71b47b8beeb5146c9f55fe3bac11fe65e89bd SHA512 12611a59ff766c22a55db4b4a9f80f95a0a2e916a1d8593612c6ead32c247102a8fdc23693c6bf81bda9b604d951a62c0051e91580b1b79e190a3504c0efc20a
|
||||||
DIST file-5.45.tar.gz.asc 163 BLAKE2B 1405080c63412e9c66bfe06086ecee28b276b77cc2ddacb20cfd370c539a0d983812fd29dcf7a33bad69d6490cd439ef8d1219bfaf3928fb835a38da85013af3 SHA512 56bf131b2f35e896788be19b4d8cd1c7ec942c794fb584d5e589375d22fbccebdd04c03e779fafc0c10840586dc41e64251b3de1767ae9ab95f5d3300f9af254
|
DIST file-5.45.tar.gz.asc 163 BLAKE2B 1405080c63412e9c66bfe06086ecee28b276b77cc2ddacb20cfd370c539a0d983812fd29dcf7a33bad69d6490cd439ef8d1219bfaf3928fb835a38da85013af3 SHA512 56bf131b2f35e896788be19b4d8cd1c7ec942c794fb584d5e589375d22fbccebdd04c03e779fafc0c10840586dc41e64251b3de1767ae9ab95f5d3300f9af254
|
||||||
|
@ -1,178 +0,0 @@
|
|||||||
# Copyright 1999-2023 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_{10..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=/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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 lzip lzma python seccomp static-libs zlib zstd"
|
|
||||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
|
|
||||||
lzip? ( app-arch/lzlib )
|
|
||||||
lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
|
|
||||||
python? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
|
||||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
|
||||||
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
${DEPEND}
|
|
||||||
python? ( !dev-python/python-magic )
|
|
||||||
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
|
||||||
"
|
|
||||||
BDEPEND+="
|
|
||||||
python? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
${DISTUTILS_DEPS}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# https://bugs.gentoo.org/898676
|
|
||||||
QA_CONFIG_IMPL_DECL_SKIP=( makedev )
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
|
||||||
"${FILESDIR}/file-5.43-portage-sandbox.patch" #889046
|
|
||||||
"${FILESDIR}/file-5.44-limits-solaris.patch" # applied upstream
|
|
||||||
"${FILESDIR}/file-5.44-seccomp-utimes.patch" # upstream
|
|
||||||
"${FILESDIR}/file-5.44-decompress-empty.patch" # upstream
|
|
||||||
)
|
|
||||||
|
|
||||||
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 -i 's@README.md@README.python.md@' python/setup.py || die
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
local myeconfargs=(
|
|
||||||
--enable-fsect-man5
|
|
||||||
$(use_enable bzip2 bzlib)
|
|
||||||
$(multilib_native_use_enable lzip lzlib)
|
|
||||||
$(use_enable lzma xzlib)
|
|
||||||
$(use_enable seccomp libseccomp)
|
|
||||||
$(use_enable static-libs static)
|
|
||||||
$(use_enable zlib)
|
|
||||||
$(use_enable zstd zstdlib)
|
|
||||||
)
|
|
||||||
|
|
||||||
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
|
|
||||||
}
|
|
@ -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 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||||
|
|
||||||
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
|
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-file )"
|
||||||
fi
|
fi
|
||||||
|
@ -1,175 +0,0 @@
|
|||||||
# Copyright 1999-2023 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_{10..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=/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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 lzip lzma python seccomp static-libs zlib zstd"
|
|
||||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
|
|
||||||
lzip? ( app-arch/lzlib )
|
|
||||||
lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
|
|
||||||
python? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
|
||||||
)
|
|
||||||
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
|
||||||
zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
|
|
||||||
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
${DEPEND}
|
|
||||||
python? ( !dev-python/python-magic )
|
|
||||||
seccomp? ( >=sys-libs/libseccomp-2.5.4[${MULTILIB_USEDEP}] )
|
|
||||||
"
|
|
||||||
BDEPEND+="
|
|
||||||
python? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
${DISTUTILS_DEPS}
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
# https://bugs.gentoo.org/898676
|
|
||||||
QA_CONFIG_IMPL_DECL_SKIP=( makedev )
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
|
|
||||||
"${FILESDIR}/file-5.43-portage-sandbox.patch" #889046
|
|
||||||
)
|
|
||||||
|
|
||||||
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 -i 's@README.md@README.python.md@' python/setup.py || die
|
|
||||||
}
|
|
||||||
|
|
||||||
multilib_src_configure() {
|
|
||||||
local myeconfargs=(
|
|
||||||
--enable-fsect-man5
|
|
||||||
$(use_enable bzip2 bzlib)
|
|
||||||
$(multilib_native_use_enable lzip lzlib)
|
|
||||||
$(use_enable lzma xzlib)
|
|
||||||
$(use_enable seccomp libseccomp)
|
|
||||||
$(use_enable static-libs static)
|
|
||||||
$(use_enable zlib)
|
|
||||||
$(use_enable zstd zstdlib)
|
|
||||||
)
|
|
||||||
|
|
||||||
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,28 +0,0 @@
|
|||||||
Allow syscalls for Gentoo's portage sandbox
|
|
||||||
|
|
||||||
- Add getcwd (bug #728978)
|
|
||||||
- Add faccessat2 (bug #889046)
|
|
||||||
|
|
||||||
Bug: https://bugs.gentoo.org/728978
|
|
||||||
Bug: https://bugs.gentoo.org/889046
|
|
||||||
--- a/src/seccomp.c
|
|
||||||
+++ b/src/seccomp.c
|
|
||||||
@@ -174,6 +174,9 @@ enable_sandbox_full(void)
|
|
||||||
ALLOW_RULE(exit_group);
|
|
||||||
#ifdef __NR_faccessat
|
|
||||||
ALLOW_RULE(faccessat);
|
|
||||||
+#endif
|
|
||||||
+#ifdef __NR_faccessat2
|
|
||||||
+ ALLOW_RULE(faccessat2);
|
|
||||||
#endif
|
|
||||||
ALLOW_RULE(fcntl);
|
|
||||||
ALLOW_RULE(fcntl64);
|
|
||||||
@@ -237,6 +240,8 @@ enable_sandbox_full(void)
|
|
||||||
ALLOW_RULE(write);
|
|
||||||
ALLOW_RULE(writev);
|
|
||||||
|
|
||||||
+ // needed by Gentoo's portage sandbox
|
|
||||||
+ ALLOW_RULE(getcwd);
|
|
||||||
|
|
||||||
#if 0
|
|
||||||
// needed by valgrind
|
|
@ -1,126 +0,0 @@
|
|||||||
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));
|
|
||||||
|
|
@ -1,19 +0,0 @@
|
|||||||
softmagic: include limits.h for UINT_MAX usage
|
|
||||||
|
|
||||||
Platforms like Solaris need this to compile.
|
|
||||||
|
|
||||||
Bug: https://bugs.astron.com/view.php?id=413
|
|
||||||
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
|
|
||||||
|
|
||||||
--- a/src/softmagic.c
|
|
||||||
+++ b/src/softmagic.c
|
|
||||||
@@ -42,6 +42,7 @@
|
|
||||||
#include <ctype.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <time.h>
|
|
||||||
+#include <limits.h>
|
|
||||||
#include "der.h"
|
|
||||||
|
|
||||||
file_private int match(struct magic_set *, struct magic *, file_regex_t **, size_t,
|
|
||||||
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
https://github.com/file/file/commit/1590a653b520123d47070a47436abfba42d4c943
|
|
||||||
|
|
||||||
From 1590a653b520123d47070a47436abfba42d4c943 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Christos Zoulas <christos@zoulas.com>
|
|
||||||
Date: Mon, 26 Dec 2022 18:57:29 +0000
|
|
||||||
Subject: [PATCH] PR/408: SpraxDev: Add utimes to the allow list for -p
|
|
||||||
|
|
||||||
--- a/src/seccomp.c
|
|
||||||
+++ b/src/seccomp.c
|
|
||||||
@@ -233,6 +233,7 @@ enable_sandbox_full(void)
|
|
||||||
ALLOW_RULE(umask); // Used in file_pipe2file()
|
|
||||||
ALLOW_RULE(getpid); // Used by glibc in file_pipe2file()
|
|
||||||
ALLOW_RULE(unlink);
|
|
||||||
+ ALLOW_RULE(utimes);
|
|
||||||
ALLOW_RULE(write);
|
|
||||||
ALLOW_RULE(writev);
|
|
||||||
|
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user