summaryrefslogtreecommitdiff
path: root/net-ftp/vsftpd
diff options
context:
space:
mode:
Diffstat (limited to 'net-ftp/vsftpd')
-rw-r--r--net-ftp/vsftpd/Manifest3
-rw-r--r--net-ftp/vsftpd/files/vsftpd-3.0.4-dont-link-caps.patch17
-rw-r--r--net-ftp/vsftpd/vsftpd-3.0.4.ebuild147
3 files changed, 167 insertions, 0 deletions
diff --git a/net-ftp/vsftpd/Manifest b/net-ftp/vsftpd/Manifest
index 897b8477e0fa..494750c536bf 100644
--- a/net-ftp/vsftpd/Manifest
+++ b/net-ftp/vsftpd/Manifest
@@ -6,6 +6,7 @@ AUX vsftpd-3.0.0-Makefile.patch 1093 BLAKE2B 90f842b4da91253f2d95b256fdda1aff82e
AUX vsftpd-3.0.2-alpha.patch 525 BLAKE2B 8d3e0ce8a6cd79862ae0071ab61f1bd9db5a69481eb782bc1f53e9be08ad670e98b72b698cae1ce26744b8250d58298476c012fe3a73105c5eb4edb060b12984 SHA512 5d9639bf7fa08bfce5cbbc79c59445e099c42adec6dc1a3e14e6a9586c53a082e0c712625a3de62418fd0f0bd253b6b673a700157be07ab114770707739a6c38
AUX vsftpd-3.0.2-remove-legacy-cap.patch 1739 BLAKE2B ee1d4461ec1ca783a2f704797f504f40f6fbde93707e27044031d03a67e105ecf02be524b1c60bc3ee5ec1624403adab4362637c120de6336aab76a3bf4397a8 SHA512 b0c2b91f0ba3b73706c352ac391e35b048b544fbab1ab3cd223be7f5ca33516143a775456871ded354a05bf74f0403436f4659d06ae9345e8d6a6d1b21addd42
AUX vsftpd-3.0.3-sparc.patch 462 BLAKE2B bb63dab9f38ba46aa622a1cbacd4d42c1e24a6e413b57e2c47d98235f4fc99684b42ee2a729d12b4e11c14ca063aa51afae25fcbfa9c01b8ab8733801470d397 SHA512 6bbee5674969d6ea356722196cb54c4b8f5da5802b05af560595b0cc48b63af6666ecb58cff085f5a77a95eb8c03590e7406fadf5e38cbce8354e6df66c989cf
+AUX vsftpd-3.0.4-dont-link-caps.patch 592 BLAKE2B 2ffb1c375c4869acdb24a89d245104d5b8407f143dd7a4820776b583e914e99891305c03904f6dfee7dd88941940065864d104a17ae3038a713092726c636d62 SHA512 2cb131c8879462047d7ec9348424fbdb0536c783e9047d2a43b8c011b82aa54c57c0aa20caf4aeb50862bfdce31930c79beb5afc1bb0ffa6f47abf7027795ac1
AUX vsftpd-checkconfig.sh 785 BLAKE2B c856a268dbfbcda6bbae38fcf444b1c64986c32d426c890bd67da15c65ecb9082b76f4f8382534f519d6d1c34d50cd5d9bd917f41e5e393af68483b666eb4ebf SHA512 541702557231c79413ae77cf26c28398fea3cb332375f8d22e0c0a45706b04db954d268addd76fecbb8b0ab3109f1009c18b0599394ed33c4a6fc8dc647d889e
AUX vsftpd-disable-seccomp-sandbox.patch 362 BLAKE2B 47aeb759113e6c6c401c6e135d742f06435490a51bad1a3b72778c60ed5a6ccbb4ea6ab3eeb87948b7658bcf539c277bc75674284474f05d0c4b76e9690c5cb7 SHA512 efa4529a30dc306c190840f47b0e7c4f99321e6d83254015a98018d287c7e624a2472effdd7e7fa1e11a25ca00e876539fd4bc63dc6b0d859c065a7c48e2b0ac
AUX vsftpd.conf 3733 BLAKE2B 17b92df3ffebd556a9a8e6b7d5ee819528e29615c270afbac82694c31dc8ebb86e844780e49f84fdedfe84a70c6ace998969c026b9ff8aa1ddac27ecd60cd665 SHA512 417b2ebdffe41073d7ee8a1f414ba5bfe4b15411e37b99444443c240fa540c97b0c247f9151ef306f84775dd78370f5985121417267bf25a76f87d259d843719
@@ -16,5 +17,7 @@ AUX vsftpd.socket 104 BLAKE2B 093a6265694c177e724fa2880e8de2e0477347bda315937dba
AUX vsftpd.xinetd 321 BLAKE2B 3a91c0e65a511ed5ca0feed429550b0ce6e1bd2cc133460e2642fe37aa122b59c0a3fe509d00a5435eaf4c300962c9cb5712b083e7d7d927ffbc148d0bd6a5b8 SHA512 30fb4ae07f55011b9b29625db072062a0f1df4f1c7578041231f35febfb90ad2d2dfe1deb964e34fde5c660f0e3ffc3df3d77af1b2f3a1f724176f691a53a182
AUX vsftpd_at.service 328 BLAKE2B 826daeaa5b388273c6cefcfcee7415353773db5b9937b3ee714bcf76dd8b061c0693bc9d4b60742fcf5cc946543e69dbb7caacc4ba07b5503d8b66c7db4174df SHA512 5a39e853405bd5028f2c52183eb91ad559fb8edbaacfff5d5146e686417c208bb894bd86d5830a61720a1aaa9ba901160c75ed2bf47eec459b2a49ed217b9cb1
DIST vsftpd-3.0.3.tar.gz 196649 BLAKE2B dbf96e788494c29d78ca49fad6a03641c9725f9a5b01a4059ad009870fdc28520cd467cd8288a8a9a520c411c495a42c3fff57ee1069efc65840adb245792dca SHA512 5a4410a88e72ecf6f60a60a89771bcec300c9f63c2ea83b219bdf65fd9749b9853f9579f7257205b55659aefcd5dab243eba878dbbd4f0ff8532dd6e60884df7
+DIST vsftpd-3.0.4.tar.gz 197637 BLAKE2B 3a2457bd74076de8ffba7ad2861009157c80dd9f38cdb63033804c72d7482666f7e1a400777e2cff4170f0999d79f9d384339ade3ad48f2a7567b2e684e48817 SHA512 a4c3b28ef7bd762dcfe53f5c9b68fc1bb371d2eb61dc88038959cc9f5efba8cc2c45a15956a7fddbac3b1ce03d8555df8fb7b86300e273a78e632f3dac15c2e3
EBUILD vsftpd-3.0.3-r3.ebuild 3633 BLAKE2B 08c7a3d97316b3e11f828c68cd45d93748b8d8bf152ff18b0209330ea12a4431202b5f0afdcd77ee05a7d4b40ebbed603b4171d6daaa7794455dbdaddfd1f02c SHA512 08c61ab1b145df8218af695eae82331a76f8609805175aa721183973554e1fb7ab2bbffbf37052c0db12afc47c4cfa2b71282d1ca327e973607b8bb8a6bafa73
+EBUILD vsftpd-3.0.4.ebuild 3624 BLAKE2B 1b48db1411cbf50b05e576417e07228d7aee860fd33bc1f5c1c8d118e13cf74ff620ca3b3a885512ba1eac57473bd4d34aececac63dba115710b3c729721a2dc SHA512 f58d8653f8a141337168d3cca1d6608c32eaf97c73ad703f5316032448f6d0445dbe778d32564b1e4899c9913bb5ab7a8be890dc7d62dff4869b6709009ff7a4
MISC metadata.xml 167 BLAKE2B e4dadf27fd344484f2bccb5b904909c89aac568c32e5b3c44bdf139eacefd4b4fae74419f503d2b7da0dccc1b68ba05d777d11292c0f89270d1ac5c9c703e8ca SHA512 7c8decb24ee3a850e38186cf3c7f8933a28017426806870ad6ef9ceb2533be147a2681fc789b535a81cb528af8c29d90d3006e4f250aee23bd7dea4561294e33
diff --git a/net-ftp/vsftpd/files/vsftpd-3.0.4-dont-link-caps.patch b/net-ftp/vsftpd/files/vsftpd-3.0.4-dont-link-caps.patch
new file mode 100644
index 000000000000..75e0e3e7cfd3
--- /dev/null
+++ b/net-ftp/vsftpd/files/vsftpd-3.0.4-dont-link-caps.patch
@@ -0,0 +1,17 @@
+--- a/vsf_findlibs.sh
++++ b/vsf_findlibs.sh
+@@ -47,14 +47,6 @@
+ # For older HP-UX...
+ locate_library /usr/lib/libsec.sl && echo "-lsec";
+
+-# Look for libcap (capabilities)
+-# Note that link may fail with:
+-# /usr/bin/ld: cannot find -lcap
+-# If the libcap-devel package isn't installed.
+-locate_library /usr/lib/libcap.so && echo "-lcap";
+-locate_library /lib/libcap.so && echo "-lcap";
+-locate_library /lib64/libcap.so && echo "-lcap";
+-
+ # Solaris needs this for nanosleep()..
+ locate_library /lib/libposix4.so && echo "-lposix4";
+ locate_library /usr/lib/libposix4.so && echo "-lposix4";
diff --git a/net-ftp/vsftpd/vsftpd-3.0.4.ebuild b/net-ftp/vsftpd/vsftpd-3.0.4.ebuild
new file mode 100644
index 000000000000..e7be11994783
--- /dev/null
+++ b/net-ftp/vsftpd/vsftpd-3.0.4.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit systemd toolchain-funcs
+
+DESCRIPTION="Very Secure FTP Daemon written with speed, size and security in mind"
+HOMEPAGE="http://vsftpd.beasts.org/"
+SRC_URI="http://security.appspot.com/downloads/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="caps pam tcpd ssl selinux xinetd"
+
+DEPEND="caps? ( >=sys-libs/libcap-2 )
+ pam? ( sys-libs/pam )
+ tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
+ ssl? ( dev-libs/openssl:0= )"
+RDEPEND="${DEPEND}
+ net-ftp/ftpbase
+ selinux? ( sec-policy/selinux-ftp )
+ xinetd? ( sys-apps/xinetd )"
+
+PATCHES=(
+ # kerberos patch. bug #335980
+ "${FILESDIR}/${PN}-2.3.2-kerberos.patch"
+
+ # Patch the source, config and the manpage to use /etc/vsftpd/
+ "${FILESDIR}/${PN}-2.3.5-gentoo.patch"
+
+ # Fix building without the libcap
+ "${FILESDIR}/${PN}-2.1.0-caps.patch"
+
+ # Fix building on alpha. Bug #405829
+ "${FILESDIR}/${PN}-3.0.2-alpha.patch"
+
+ # Bug #335977
+ "${FILESDIR}"/${PN}-3.0.0-Makefile.patch
+
+ # Bug #450536
+ "${FILESDIR}"/${PN}-3.0.2-remove-legacy-cap.patch
+
+ # Bug #630704
+ "${FILESDIR}"/${PN}-3.0.3-sparc.patch
+
+ # https://bugs.gentoo.org/443898
+ #"${FILESDIR}"/vsftpd-disable-seccomp-sandbox.patch
+)
+
+src_prepare() {
+ # Configure vsftpd build defaults
+ if use tcpd ; then
+ echo "#define VSF_BUILD_TCPWRAPPERS" >> builddefs.h || die
+ fi
+
+ if use ssl ; then
+ echo "#define VSF_BUILD_SSL" >> builddefs.h || die
+ fi
+
+ if ! use pam; then
+ echo "#undef VSF_BUILD_PAM" >> builddefs.h || die
+ fi
+
+ # Ensure that we don't link against libcap unless asked
+ if ! use caps ; then
+ sed -i '/^#define VSF_SYSDEP_HAVE_LIBCAP$/ d' sysdeputil.c || die
+ eapply "${FILESDIR}"/${PN}-3.0.4-dont-link-caps.patch
+ fi
+
+ # Let portage control stripping
+ sed -i '/^LINK[[:space:]]*=[[:space:]]*/ s/-Wl,-s//' Makefile || die
+
+ default
+}
+
+src_compile() {
+ # Override LIBS variable. Bug #508192
+ LIBS=
+ use caps && LIBS+=" -lcap"
+ use pam && LIBS+=" -lpam"
+ use tcpd && LIBS+=" -lwrap"
+ use ssl && LIBS+=" -lssl -lcrypto"
+
+ tc-export CC
+
+ CFLAGS="${CFLAGS}" emake LIBS="${LIBS}"
+}
+
+src_install() {
+ into /usr
+ doman ${PN}.conf.5 ${PN}.8
+ dosbin ${PN}
+
+ dodoc AUDIT BENCHMARKS BUGS Changelog FAQ \
+ README README.security REWARD SIZE \
+ SPEED TODO TUNING
+ newdoc ${PN}.conf ${PN}.conf.example
+
+ docinto security
+ dodoc SECURITY/*
+
+ docinto examples
+ dodoc -r EXAMPLE/*
+
+ insinto /etc/${PN}
+ newins ${PN}.conf{,.example}
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}"/${PN}.xinetd ${PN}
+ fi
+
+ newinitd "${FILESDIR}"/${PN}.init ${PN}
+
+ keepdir /usr/share/${PN}/empty
+
+ exeinto /usr/libexec
+ doexe "${FILESDIR}"/vsftpd-checkconfig.sh
+ systemd_dounit "${FILESDIR}"/${PN}.service
+ systemd_newunit "${FILESDIR}"/${PN}_at.service "${PN}@.service"
+ systemd_dounit "${FILESDIR}"/${PN}.socket
+}
+
+pkg_preinst() {
+ # If we use xinetd, then we set listen=NO
+ # so that our default config works under xinetd - fixes #78347
+ if use xinetd ; then
+ sed -i 's/listen=YES/listen=NO/g' "${D}"/etc/${PN}/${PN}.conf.example || die
+ fi
+}
+
+pkg_postinst() {
+ einfo "vsftpd openRC init script can now be multiplexed."
+ einfo "The default init script forces /etc/vsftpd/vsftpd.conf to exist."
+ einfo "If you symlink the init script to another one, say vsftpd.foo"
+ einfo "then that uses /etc/vsftpd/foo.conf instead."
+ einfo
+ einfo "Example:"
+ einfo " cd /etc/init.d"
+ einfo " ln -s vsftpd vsftpd.foo"
+ einfo "You can now treat vsftpd.foo like any other service"
+}