summaryrefslogtreecommitdiff
path: root/sys-apps/file
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/file')
-rw-r--r--sys-apps/file/Manifest6
-rw-r--r--sys-apps/file/file-5.46-r1.ebuild188
-rw-r--r--sys-apps/file/file-5.46-r2.ebuild189
-rw-r--r--sys-apps/file/file-9999.ebuild19
-rw-r--r--sys-apps/file/files/file-5.46-buffer-overflow.patch22
-rw-r--r--sys-apps/file/files/file-5.46-zip.patch57
6 files changed, 468 insertions, 13 deletions
diff --git a/sys-apps/file/Manifest b/sys-apps/file/Manifest
index 437672856373..b1adc1954d7b 100644
--- a/sys-apps/file/Manifest
+++ b/sys-apps/file/Manifest
@@ -3,11 +3,15 @@ AUX file-5.45-32-bit-time_t-deux.patch 929 BLAKE2B 3798fe20be6deb8df058c51d91676
AUX file-5.45-32-bit-time_t.patch 1164 BLAKE2B a2840cb4a14c8e0bd35e4bf054b336a52b6f26d3d041f87deb3a3a02be31d0fa60e731b964bedc3a22a2e52f5fa8e4b5e7b017247d838c32f2c09d2985397eae SHA512 0059736fec00a33d41005891524553c4b89b2c3d78f5b30c58737be0d7b8e3d26b17591fe52cb570b21d0b39203614055221f726e1914c053dcf5dcc8ad02da1
AUX file-5.45-seccomp-sandbox.patch 1354 BLAKE2B 5b84be7d9a8ac3a99a6414895afab07fb3a135b646890c960bf02b6276cfc0bacb8b1cf1f2cabb34017ce3e7389b8bf023779b15b8b8d2e89c4da2734fa6b9ac SHA512 cb3973a5165641acd32dc5101f8e07f93e5a05b0b90cb1f03502dda6ba54e5f59c74efec45b430000c61996436c0b973b68553351400aabbec4355d9ebd091fc
AUX file-5.45-weak-magic-shell.patch 1166 BLAKE2B 715d220e472a6ea1c6374f8b0f789699f0cb4292c25768808d23503104e660ad07946e5e6466cc391eb7ffd87fbca1966e13da39440046576183f56b8c013bc9 SHA512 532bbd9d643badb50977b3ff168a77dbd282f9e83f11716d1f863bcf2ef29402a2e6d488a79e175d24a36bdcad68f9ef940478bc658bad0bc2ddcdc34f26148d
+AUX file-5.46-buffer-overflow.patch 820 BLAKE2B 60e139e4d84c3fb87f51c8ede6575440ad1cdd0f886d1b03a4e253bb58f9a99bc1c8b0181087b879ffa7c3befe1d67bbc8a80a06d75aedb1bc3b38776b1cd11f SHA512 7b0b30254fab91a1603319130901381b45e9e31bfa4b85f8cd07d07a84fb0bf3dd1003bb92aa6c2ec7e047090778654de06df6e33e4aea40f09ddcf0953bee6e
+AUX file-5.46-zip.patch 1821 BLAKE2B b17e200c76fd8ea0e69e2d12dbe43a08503d73cb0ff13aecf9d18cfbab0baff7cc67f2346d1410180033c2dfad1ef55fbe4dd7a9cbd8d24108f978f97cfa4e43 SHA512 fb37a1798439f66bd10ac0c9a433e85fa583b435c3f4b30036aca84dd1946e8456e028ae4ee4d83aa26b1a282fd4d7e81e9ae04ace210f7db0db4f3f0fce22e5
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.46.tar.gz 1312892 BLAKE2B 2b1df136f01c253cc490b483c644403da0674692ef97ef9e1239878328cfb8ce2bc418c14626145719c69acab00d56b63b5340a2b56c276c996b1e6ad1bfe9b6 SHA512 a6cb7325c49fd4af159b7555bdd38149e48a5097207acbe5e36deb5b7493ad6ea94d703da6e0edece5bb32959581741f4213707e5cb0528cd46d75a97a5242dc
DIST file-5.46.tar.gz.asc 195 BLAKE2B 7a2a65f10cbfe921ae633a9bee3a56a98b8e3100b8cbfe4b4871ce3960f28e62bb9e7425f5c1bfe9b126f43d7dd4ddcb36220f07f979072a8ef5fe62c14b5ef8 SHA512 93f99b468bbda29eab6e37fdee1f1806a10b18206a85c68e888e967678cfd128bb9c34bc9835a699e447623ddf0e2ea041039a682f7be1db2ab37935fd4aafa0
EBUILD file-5.45-r4.ebuild 4238 BLAKE2B 6e5a129ed8fe1795bf2c545cc994aac6d3f81f1c519bd481fa30578a7906a48a536f9ad9be46408de7d7685416cfea1e00b247aa1e75292a85259f31b8860aaf SHA512 ca51f4d086d211c04165e91c6156997f5906b153f67cda76471986d3e47a44dff0e908f26a53794987e631659a7cdc0b1f3daef0d5d653f50d9219336ee0e794
+EBUILD file-5.46-r1.ebuild 4064 BLAKE2B e7b70ee3708a06cd2179dcc2d81dad9e6a77e1ab2b9b9bd5020dd4fa3f4bc39fb76b6c6763116a6485a8e83390d8fbb7ae9d41101b3f85a7900a25cc0445f6d9 SHA512 4a7e809e989f22d6781de048dac3de11603b89f489ba033bc49fa4c89e96d487a75889f12c34078e44a5c2fae88ce7eec38f4d3a9696ccc337dc524f82fa297e
+EBUILD file-5.46-r2.ebuild 4111 BLAKE2B 0b18cfd4ec8ba97fafeca12e064228543db6f68df7e32d47181f39235f1c5bfbea1f56aec68e75caa1d05224fc680dd486261e4282f9e8bb1b0a55d6696d155e SHA512 f9510e62d55d1a0c040119a461c28652e8709628d18aebbd3e33b4c7d1683ea24d867da0449ff5c0b38432f728941f56c1b5acb8da5b040730a3da3c222fe141
EBUILD file-5.46.ebuild 4110 BLAKE2B 15a3a108c10a8645a97710ef62b97835fa4bb412911770084418c5cd36f3cf8175d28c0bc358da62b320cb09b0173a5553c20316a0ccf84c87c17e8c71fb1b88 SHA512 513f8f4f66b64a70aed208bce753505b62c9f72c3f2547ff42762b17febe16ebf8bf076395fe6519c0838a2b31e04cb81cee85d72cfa24c98f745dc5468d47f5
-EBUILD file-9999.ebuild 4238 BLAKE2B 6e5a129ed8fe1795bf2c545cc994aac6d3f81f1c519bd481fa30578a7906a48a536f9ad9be46408de7d7685416cfea1e00b247aa1e75292a85259f31b8860aaf SHA512 ca51f4d086d211c04165e91c6156997f5906b153f67cda76471986d3e47a44dff0e908f26a53794987e631659a7cdc0b1f3daef0d5d653f50d9219336ee0e794
+EBUILD file-9999.ebuild 4029 BLAKE2B defc76fdcaf58b596f5f0890d2f4704ee78b700c8705b5d8d164b1b870f9599a1a31ac642dbc0dd7ab5b181adc57da2acb674ec3391e19897350a7e4143a92b4 SHA512 1f5ec6ac6c6eeb3faadee96a57396b13730450d87d6c9b926fa5a790508a754cf59830d651a5ceb746b625ed887394400f1b48453b21e3073ec6bfce8efec737
MISC metadata.xml 439 BLAKE2B d937d412b733516f49ca24a5de5238688ba56c06872cec060608139cb551f78e165e05990bcf6ea5bb1e98d27eb2650f5a972a4cded85eb67dbe9218d5d705b8 SHA512 20ff0c1b94dae95c3b277cfcc10da2b6ff31582cfe8f4e2ae60a74ec45db2a854eef40950f354465a45563ee6333f327566565e40cb16249d191bde585c5b1f2
diff --git a/sys-apps/file/file-5.46-r1.ebuild b/sys-apps/file/file-5.46-r1.ebuild
new file mode 100644
index 000000000000..592b6a25c65f
--- /dev/null
+++ b/sys-apps/file/file-5.46-r1.ebuild
@@ -0,0 +1,188 @@
+# Copyright 1999-2024 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..13} )
+
+inherit distutils-r1 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 libtool 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 ~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}] )
+ 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? (
+ ${PYTHON_DEPS}
+ !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.45-seccomp-sandbox.patch"
+ "${FILESDIR}/file-5.46-zip.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 -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
+}
+
+src_test() {
+ multilib-minimal_src_test
+
+ if use python ; then
+ cd python || die
+ distutils-r1_src_test
+ fi
+}
+
+python_test() {
+ eunittest
+}
+
+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
+}
diff --git a/sys-apps/file/file-5.46-r2.ebuild b/sys-apps/file/file-5.46-r2.ebuild
new file mode 100644
index 000000000000..17090d64e6a3
--- /dev/null
+++ b/sys-apps/file/file-5.46-r2.ebuild
@@ -0,0 +1,189 @@
+# Copyright 1999-2025 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..13} )
+
+inherit distutils-r1 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 libtool 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 ~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}] )
+ 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? (
+ ${PYTHON_DEPS}
+ !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.45-seccomp-sandbox.patch"
+ "${FILESDIR}/file-5.46-zip.patch"
+ "${FILESDIR}/file-5.46-buffer-overflow.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 -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
+}
+
+src_test() {
+ multilib-minimal_src_test
+
+ if use python ; then
+ cd python || die
+ distutils-r1_src_test
+ fi
+}
+
+python_test() {
+ eunittest
+}
+
+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
+}
diff --git a/sys-apps/file/file-9999.ebuild b/sys-apps/file/file-9999.ebuild
index 84ced37c5487..5372c6099bbb 100644
--- a/sys-apps/file/file-9999.ebuild
+++ b/sys-apps/file/file-9999.ebuild
@@ -14,11 +14,11 @@ if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3
else
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/file.asc
- inherit autotools verify-sig
+ inherit libtool 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 ~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 ~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
@@ -60,21 +60,16 @@ QA_CONFIG_IMPL_DECL_SKIP=( makedev )
PATCHES=(
"${FILESDIR}/file-5.43-seccomp-fstatat64-musl.patch" #789336, not upstream yet
"${FILESDIR}/file-5.45-seccomp-sandbox.patch"
- "${FILESDIR}/${P}-32-bit-time_t.patch"
- "${FILESDIR}/${P}-32-bit-time_t-deux.patch"
- "${FILESDIR}/${P}-weak-magic-shell.patch" #908401
)
src_prepare() {
default
- #if [[ ${PV} == 9999 ]] ; then
- # eautoreconf
- #else
- # elibtoolize
- #fi
- # Just for file-5.45-32-bit-time_t-deux.patch, drop in 5.46
- eautoreconf
+ 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
diff --git a/sys-apps/file/files/file-5.46-buffer-overflow.patch b/sys-apps/file/files/file-5.46-buffer-overflow.patch
new file mode 100644
index 000000000000..75c3383a0e38
--- /dev/null
+++ b/sys-apps/file/files/file-5.46-buffer-overflow.patch
@@ -0,0 +1,22 @@
+https://gitlab.alpinelinux.org/alpine/aports/-/issues/16797
+https://gitlab.alpinelinux.org/alpine/aports/-/commit/5482d8c22c7c560b285ed1df1f691242fc4d5782
+https://bugs.astron.com/view.php?id=579
+https://github.com/file/file/commit/b3384a1fbfa1fee99986e5750ab8e700de4f24ad
+
+From b3384a1fbfa1fee99986e5750ab8e700de4f24ad Mon Sep 17 00:00:00 2001
+From: Christos Zoulas <christos@zoulas.com>
+Date: Thu, 5 Dec 2024 18:35:40 +0000
+Subject: [PATCH] PR/579: net147: Fix stack overrun.
+
+--- a/src/readelf.c
++++ b/src/readelf.c
+@@ -1726,7 +1726,7 @@ dophn_exec(struct magic_set *ms, int clazz, int swap, int fd, off_t off,
+ Elf64_Phdr ph64;
+ const char *linking_style;
+ unsigned char nbuf[NBUFSIZE];
+- char interp[128];
++ char interp[NBUFSIZE];
+ ssize_t bufsize;
+ size_t offset, align, need = 0;
+ int pie = 0, dynamic = 0;
+
diff --git a/sys-apps/file/files/file-5.46-zip.patch b/sys-apps/file/files/file-5.46-zip.patch
new file mode 100644
index 000000000000..d15d49459165
--- /dev/null
+++ b/sys-apps/file/files/file-5.46-zip.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/946957
+https://bugs.astron.com/view.php?id=571
+https://github.com/file/file/commit/60b2032b96fc185b37fb0f2152e834efb2edad6e
+
+From 60b2032b96fc185b37fb0f2152e834efb2edad6e Mon Sep 17 00:00:00 2001
+From: Christos Zoulas <christos@zoulas.com>
+Date: Thu, 5 Dec 2024 19:41:12 +0000
+Subject: [PATCH] PR/571: jschleus: Some zip files are misclassified as data
+
+---
+ magic/Magdir/archive | 25 +++++++++++++++----------
+ 1 file changed, 15 insertions(+), 10 deletions(-)
+
+diff --git a/magic/Magdir/archive b/magic/Magdir/archive
+index e6ff4570a..e560523cb 100644
+--- a/magic/Magdir/archive
++++ b/magic/Magdir/archive
+@@ -1795,6 +1795,17 @@
+ !:ext zip/cbz
+
+
++# Generic zip archives (Greg Roelofs, c/o zip-bugs@wkuvx1.wku.edu)
++# Next line excludes specialized formats:
++0 name zipgeneric
++>4 beshort x Zip archive data, at least
++!:mime application/zip
++>4 use zipversion
++>4 beshort x to extract
++>8 beshort x \b, compression method=
++>8 use zipcompression
++>0x161 string WINZIP \b, WinZIP self-extracting
++
+ 0 string PK\003\004
+ !:strength +1
+ # IOS/IPadOS IPA file (Zip archive)
+@@ -2132,17 +2143,11 @@
+ >>>>>>(-6.l) search/9000 kmp.json Keyman Compiled Package File
+ !:mime application/vnd.keyman.kmp+zip
+ !:ext kmp
++>>>>>+4 default x
++>>>>>>0 use zipgeneric
+
+-# Generic zip archives (Greg Roelofs, c/o zip-bugs@wkuvx1.wku.edu)
+-# Next line excludes specialized formats:
+ >>>>+4 default x
+->>>>>4 beshort x Zip archive data, at least
+-!:mime application/zip
+->>>>>4 use zipversion
+->>>>>4 beshort x to extract
+->>>>>8 beshort x \b, compression method=
+->>>>>8 use zipcompression
+->>>>>0x161 string WINZIP \b, WinZIP self-extracting
++>>>>>0 use zipgeneric
+
+ # Zip archives (Greg Roelofs, c/o zip-bugs@wkuvx1.wku.edu)
+ 0 string PK\005\006 Zip archive data (empty)
+