* [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/
@ 2017-04-05 20:26 Lars Wendler
0 siblings, 0 replies; 6+ messages in thread
From: Lars Wendler @ 2017-04-05 20:26 UTC (permalink / raw
To: gentoo-commits
commit: 23fb07df54a4817b6f9ead5676754576b07ceff3
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 5 20:25:43 2017 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Apr 5 20:26:33 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23fb07df
net-ftp/pure-ftpd: Added openssl-1.1 patch (bug #592500).
Package-Manager: Portage-2.3.5, Repoman-2.3.2
.../files/pure-ftpd-1.0.45-openssl-1.1.patch | 41 ++++++++++++++++++++++
net-ftp/pure-ftpd/pure-ftpd-1.0.45-r1.ebuild | 1 +
2 files changed, 42 insertions(+)
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd-1.0.45-openssl-1.1.patch b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.45-openssl-1.1.patch
new file mode 100644
index 00000000000..714809f37af
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.45-openssl-1.1.patch
@@ -0,0 +1,41 @@
+From 54cc692f997c72eb530f38e62de38ed444eb152e Mon Sep 17 00:00:00 2001
+From: Frank Denis <github@pureftpd.org>
+Date: Wed, 5 Apr 2017 12:30:32 -0700
+Subject: [PATCH] Add strict support for the OpenSSL 1.1 API
+
+---
+ src/tls.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/src/tls.c b/src/tls.c
+index 3c87bbb..21c83b2 100644
+--- a/src/tls.c
++++ b/src/tls.c
+@@ -258,9 +258,17 @@ int tls_init_library(void)
+
+ tls_cnx_handshook = 0;
+ tls_data_cnx_handshook = 0;
++# if OPENSSL_VERSION_NUMBER < 0x10100000L
+ SSL_library_init();
+ SSL_load_error_strings();
+ OpenSSL_add_all_algorithms();
++# else
++ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS |
++ OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL);
++ OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS |
++ OPENSSL_INIT_ADD_ALL_DIGESTS |
++ OPENSSL_INIT_LOAD_CONFIG, NULL);
++# endif
+ while (RAND_status() == 0) {
+ rnd = zrand();
+ RAND_seed(&rnd, (int) sizeof rnd);
+@@ -347,7 +355,9 @@ void tls_free_library(void)
+ SSL_CTX_free(tls_ctx);
+ tls_ctx = NULL;
+ }
++# if OPENSSL_API_COMPAT < 0x10100000L
+ EVP_cleanup();
++# endif
+ }
+
+ int tls_init_new_session(void)
diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r1.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r1.ebuild
index 2cd88cdca1b..7dcc0d9aee3 100644
--- a/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r1.ebuild
+++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r1.ebuild
@@ -38,6 +38,7 @@ RDEPEND="${DEPEND}
PATCHES=(
"${FILESDIR}"/${PN}-1.0.28-pam.patch
+ "${FILESDIR}"/${P}-openssl-1.1.patch
)
src_configure() {
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/
@ 2018-12-07 15:29 Lars Wendler
0 siblings, 0 replies; 6+ messages in thread
From: Lars Wendler @ 2018-12-07 15:29 UTC (permalink / raw
To: gentoo-commits
commit: 0893de7095967cbdac7060b17a9024c8e7366c88
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 7 15:27:21 2018 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Dec 7 15:29:21 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0893de70
net-ftp/pure-ftpd: Removed old.
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
net-ftp/pure-ftpd/Manifest | 1 -
.../files/pure-ftpd-1.0.45-openssl-1.1.patch | 41 ------
net-ftp/pure-ftpd/pure-ftpd-1.0.45-r3.ebuild | 142 ---------------------
3 files changed, 184 deletions(-)
diff --git a/net-ftp/pure-ftpd/Manifest b/net-ftp/pure-ftpd/Manifest
index 469d95112c3..7be11d70d6b 100644
--- a/net-ftp/pure-ftpd/Manifest
+++ b/net-ftp/pure-ftpd/Manifest
@@ -1,2 +1 @@
-DIST pure-ftpd-1.0.45.tar.bz2 497695 BLAKE2B c905675253d992757e44baf1fae42d8363789ce3eb4d71d6f0e5c994a63efd307af69fb81aadb1875f0f2da952c0b3c8fbbc79c9c5c0b22c2d2f82029b417f11 SHA512 bb22b6b88778e2586411318905aa165e590185f7a87ac30761d6250f4de22a1deec6be5441926eae28011d3a5a923bad2ac366e237cc96a4d7932e3dbc9a1f2a
DIST pure-ftpd-1.0.47.tar.bz2 489177 BLAKE2B 06e71ead47b87dedf47a84e488b2de127fcd297c2e9ca7a617c2ee2760cf55b816884763721826c512558d016cbd38a87a11ca0e8c2334d93145edc6f88d9287 SHA512 c1920a3f67f04635fde600fe226a7730b801e7e64658b25f1d9f9c0b35a704664be4adfb0b291594f7e0f10beade25eae9a5e6cc3b6777a3b413f3c2d9574e63
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd-1.0.45-openssl-1.1.patch b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.45-openssl-1.1.patch
deleted file mode 100644
index 714809f37af..00000000000
--- a/net-ftp/pure-ftpd/files/pure-ftpd-1.0.45-openssl-1.1.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 54cc692f997c72eb530f38e62de38ed444eb152e Mon Sep 17 00:00:00 2001
-From: Frank Denis <github@pureftpd.org>
-Date: Wed, 5 Apr 2017 12:30:32 -0700
-Subject: [PATCH] Add strict support for the OpenSSL 1.1 API
-
----
- src/tls.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/src/tls.c b/src/tls.c
-index 3c87bbb..21c83b2 100644
---- a/src/tls.c
-+++ b/src/tls.c
-@@ -258,9 +258,17 @@ int tls_init_library(void)
-
- tls_cnx_handshook = 0;
- tls_data_cnx_handshook = 0;
-+# if OPENSSL_VERSION_NUMBER < 0x10100000L
- SSL_library_init();
- SSL_load_error_strings();
- OpenSSL_add_all_algorithms();
-+# else
-+ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS |
-+ OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL);
-+ OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS |
-+ OPENSSL_INIT_ADD_ALL_DIGESTS |
-+ OPENSSL_INIT_LOAD_CONFIG, NULL);
-+# endif
- while (RAND_status() == 0) {
- rnd = zrand();
- RAND_seed(&rnd, (int) sizeof rnd);
-@@ -347,7 +355,9 @@ void tls_free_library(void)
- SSL_CTX_free(tls_ctx);
- tls_ctx = NULL;
- }
-+# if OPENSSL_API_COMPAT < 0x10100000L
- EVP_cleanup();
-+# endif
- }
-
- int tls_init_new_session(void)
diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r3.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r3.ebuild
deleted file mode 100644
index 045d7c6b7ed..00000000000
--- a/net-ftp/pure-ftpd/pure-ftpd-1.0.45-r3.ebuild
+++ /dev/null
@@ -1,142 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic
-
-KEYWORDS="alpha amd64 arm ~hppa ia64 ppc ppc64 sparc x86"
-
-DESCRIPTION="Fast, production-quality, standard-conformant FTP server"
-HOMEPAGE="http://www.pureftpd.org/"
-SRC_URI="ftp://ftp.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
- http://download.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2"
-
-LICENSE="BSD"
-SLOT="0"
-
-IUSE="anondel anonperm anonren anonres caps charconv implicittls ldap libressl mysql noiplog pam paranoidmsg postgres resolveids selinux ssl sysquota vchroot xinetd"
-
-REQUIRED_USE="implicittls? ( ssl )"
-
-DEPEND="caps? ( sys-libs/libcap )
- charconv? ( virtual/libiconv )
- ldap? ( >=net-nds/openldap-2.0.25 )
- mysql? ( || (
- dev-db/mariadb-connector-c
- dev-db/mysql-connector-c
- ) )
- pam? ( virtual/pam )
- postgres? ( dev-db/postgresql:= )
- ssl? (
- !libressl? ( >=dev-libs/openssl-0.9.6g:0=[-bindist] )
- libressl? ( dev-libs/libressl:= )
- )
- sysquota? ( sys-fs/quota[-rpc] )
- xinetd? ( virtual/inetd )"
-
-RDEPEND="${DEPEND}
- dev-libs/libsodium:=
- net-ftp/ftpbase
- selinux? ( sec-policy/selinux-ftp )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.28-pam.patch"
- "${FILESDIR}/${P}-openssl-1.1.patch"
- "${FILESDIR}/${PN}-1.0.47-MAX_DATA_SIZE.patch"
-)
-
-src_configure() {
- # adjust max user length to something more appropriate
- # for virtual hosts. See bug #62472 for details.
- sed -e "s:# define MAX_USER_LENGTH 32U:# define MAX_USER_LENGTH 127U:" \
- -i "${S}/src/ftpd.h" || die "sed failed"
-
- # Those features are only configurable like this, see bug #179375.
- use anondel && append-cppflags -DANON_CAN_DELETE
- use anonperm && append-cppflags -DANON_CAN_CHANGE_PERMS
- use anonren && append-cppflags -DANON_CAN_RENAME
- use anonres && append-cppflags -DANON_CAN_RESUME
- use resolveids && append-cppflags -DALWAYS_RESOLVE_IDS
-
- # Do not auto-use SSP -- let the user select this.
- export ax_cv_check_cflags___fstack_protector_all=no
-
- local myeconfargs=(
- --enable-largefile
- --with-altlog
- --with-cookie
- --with-diraliases
- --with-extauth
- --with-ftpwho
- --with-language=${PUREFTPD_LANG:=english}
- --with-peruserlimits
- --with-privsep
- --with-puredb
- --with-quotas
- --with-ratios
- --with-throttling
- --with-uploadscript
- --with-virtualhosts
- $(use_with charconv rfc2640)
- $(use_with ldap)
- $(use_with mysql)
- $(use_with pam)
- $(use_with paranoidmsg)
- $(use_with postgres pgsql)
- $(use_with ssl tls)
- $(use_with implicittls)
- $(use_with vchroot virtualchroot)
- $(use_with sysquota sysquotas)
- $(usex caps '' '--without-capabilities')
- $(usex noiplog '--without-iplogging' '')
- $(usex xinetd '' '--without-inetd')
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- local DOCS=( AUTHORS CONTACT ChangeLog FAQ HISTORY INSTALL README* NEWS )
-
- default
-
- newinitd "${FILESDIR}/pure-ftpd.rc11" ${PN}
- newconfd "${FILESDIR}/pure-ftpd.conf_d-3" ${PN}
-
- if use implicittls ; then
- sed -i '/^SERVER/s@21@990@' "${ED}"/etc/conf.d/${PN} \
- || die "Adjusting default server port for implicittls usage failed!"
- fi
-
- keepdir /var/lib/run/${PN}
-
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}/pure-ftpd.xinetd" ${PN}
- fi
-
- if use ldap ; then
- insinto /etc/openldap/schema
- doins pureftpd.schema
- insinto /etc/openldap
- insopts -m 0600
- doins pureftpd-ldap.conf
- fi
-}
-
-pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- # This is a new installation
- elog
- elog "Before starting Pure-FTPd, you have to edit the /etc/conf.d/pure-ftpd file!"
- elog
- ewarn "It's *really* important to read the README provided with Pure-FTPd!"
- ewarn "Check out http://download.pureftpd.org/pub/pure-ftpd/doc/README for general info"
- ewarn "and http://download.pureftpd.org/pub/pure-ftpd/doc/README.TLS for SSL/TLS info."
- ewarn
- if use charconv ; then
- ewarn "Charset conversion is an *experimental* feature!"
- ewarn "Remember to set a valid charset for your filesystem in the configuration!"
- fi
- fi
-}
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/
@ 2019-01-31 17:52 Thomas Deutschmann
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Deutschmann @ 2019-01-31 17:52 UTC (permalink / raw
To: gentoo-commits
commit: 89b2b973f06a8be98a052a6e9ba17c5e1642874e
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 31 17:52:42 2019 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Jan 31 17:52:42 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=89b2b973
net-ftp/pure-ftpd: add TLS 1.3 support
Package-Manager: Portage-2.3.58, Repoman-2.3.12
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
.../pure-ftpd/files/pure-ftpd-1.0.47-TLSv1.3.patch | 46 ++++++++++++++++++++++
...1.0.47-r2.ebuild => pure-ftpd-1.0.47-r3.ebuild} | 3 +-
2 files changed, 48 insertions(+), 1 deletion(-)
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd-1.0.47-TLSv1.3.patch b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.47-TLSv1.3.patch
new file mode 100644
index 00000000000..65f19bf49da
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.47-TLSv1.3.patch
@@ -0,0 +1,46 @@
+From 4a495c61ce22c893aed5ee57f6ce0b43c3be59ad Mon Sep 17 00:00:00 2001
+From: Frank Denis <github@pureftpd.org>
+Date: Wed, 19 Sep 2018 23:53:45 +0200
+Subject: [PATCH] TLS1.3 compatibility
+
+Fixes #94
+---
+ src/tls.c | 17 +++++++++++++----
+ 1 file changed, 13 insertions(+), 4 deletions(-)
+
+diff --git a/src/tls.c b/src/tls.c
+index c693d3b..f383ed9 100644
+--- a/src/tls.c
++++ b/src/tls.c
+@@ -228,7 +228,16 @@ static void ssl_info_cb(const SSL *cnx, int where, int ret)
+ if ((where & SSL_CB_HANDSHAKE_START) != 0) {
+ if ((cnx == tls_cnx && tls_cnx_handshook != 0) ||
+ (cnx == tls_data_cnx && tls_data_cnx_handshook != 0)) {
+- die(400, LOG_ERR, "TLS renegociation");
++ const SSL_CIPHER *cipher;
++ const char *cipher_version;
++ if ((cipher = SSL_get_current_cipher(cnx)) == NULL ||
++ (cipher_version = SSL_CIPHER_get_version(cipher)) == NULL) {
++ die(400, LOG_ERR, "No cipher");
++ }
++ if (strcmp(cipher_version, "TLSv1.3") != 0) {
++ die(400, LOG_ERR, "TLS renegociation");
++ return;
++ }
+ }
+ return;
+ }
+@@ -264,10 +273,10 @@ int tls_init_library(void)
+ OpenSSL_add_all_algorithms();
+ # else
+ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS |
+- OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL);
++ OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL);
+ OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS |
+- OPENSSL_INIT_ADD_ALL_DIGESTS |
+- OPENSSL_INIT_LOAD_CONFIG, NULL);
++ OPENSSL_INIT_ADD_ALL_DIGESTS |
++ OPENSSL_INIT_LOAD_CONFIG, NULL);
+ # endif
+ while (RAND_status() == 0) {
+ rnd = zrand();
diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r2.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r3.ebuild
similarity index 98%
rename from net-ftp/pure-ftpd/pure-ftpd-1.0.47-r2.ebuild
rename to net-ftp/pure-ftpd/pure-ftpd-1.0.47-r3.ebuild
index 864c1ad8237..58e90f89ddc 100644
--- a/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r2.ebuild
+++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -43,6 +43,7 @@ RDEPEND="${DEPEND}
PATCHES=(
"${FILESDIR}/${PN}-1.0.28-pam.patch"
"${FILESDIR}/${PN}-1.0.47-MAX_DATA_SIZE.patch"
+ "${FILESDIR}/${PN}-1.0.47-TLSv1.3.patch"
)
src_configure() {
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/
@ 2019-02-23 16:22 Thomas Deutschmann
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Deutschmann @ 2019-02-23 16:22 UTC (permalink / raw
To: gentoo-commits
commit: a0929ecb1f22149df7aba7e00b5ea707ba7ca665
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 23 16:18:59 2019 +0000
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sat Feb 23 16:22:10 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0929ecb
net-ftp/pure-ftpd: temporarily disable TLSv1.3 support
Bug: https://github.com/jedisct1/pure-ftpd/issues/102
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
.../files/pure-ftpd-1.0.47-disable-TLSv1.3.patch | 21 +++++++++++++++++++++
...-1.0.47-r3.ebuild => pure-ftpd-1.0.47-r4.ebuild} | 1 +
2 files changed, 22 insertions(+)
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd-1.0.47-disable-TLSv1.3.patch b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.47-disable-TLSv1.3.patch
new file mode 100644
index 00000000000..cbe9c8bdcb8
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.47-disable-TLSv1.3.patch
@@ -0,0 +1,21 @@
+Temporarily disable TLSv1.3 support
+
+Disable TLSv1.3 until support for it is fixed in pure-ftpd. This is a
+workaround for the following issue:
+https://github.com/jedisct1/pure-ftpd/issues/102
+
+--- a/src/tls.c
++++ b/src/tls.c
+@@ -301,6 +301,10 @@ int tls_init_library(void)
+ # endif
+ # ifdef SSL_OP_NO_TLSv1_2
+ SSL_CTX_clear_options(tls_ctx, SSL_OP_NO_TLSv1_2);
++# endif
++ /* Disable TLSv1.3 support until it works properly in pure-ftpd */
++# ifdef SSL_OP_NO_TLSv1_3
++ SSL_CTX_set_options(tls_ctx, SSL_OP_NO_TLSv1_3);
+ # endif
+ if (tlsciphersuite != NULL) {
+ if (SSL_CTX_set_cipher_list(tls_ctx, tlsciphersuite) != 1) {
+--
+2.20.1
diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r3.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r4.ebuild
similarity index 98%
rename from net-ftp/pure-ftpd/pure-ftpd-1.0.47-r3.ebuild
rename to net-ftp/pure-ftpd/pure-ftpd-1.0.47-r4.ebuild
index 58e90f89ddc..48506572446 100644
--- a/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r3.ebuild
+++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.47-r4.ebuild
@@ -44,6 +44,7 @@ PATCHES=(
"${FILESDIR}/${PN}-1.0.28-pam.patch"
"${FILESDIR}/${PN}-1.0.47-MAX_DATA_SIZE.patch"
"${FILESDIR}/${PN}-1.0.47-TLSv1.3.patch"
+ "${FILESDIR}/${PN}-1.0.47-disable-TLSv1.3.patch"
)
src_configure() {
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/
@ 2022-04-16 13:45 Lars Wendler
0 siblings, 0 replies; 6+ messages in thread
From: Lars Wendler @ 2022-04-16 13:45 UTC (permalink / raw
To: gentoo-commits
commit: 3e3e91f811c2f74ee5ef2acf2ab9333b2c9927f6
Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 27 01:31:32 2022 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Apr 16 13:45:00 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3e3e91f8
net-ftp/pure-ftpd: migrate to stand-alone configuration
This bump changed at lot of things:
* Deprecating configuration via 'conf.d', since not all option are
available via command line. User will be informed about this.
* Using '/etc/pure-ftpd.conf' as main configuration file, since more
option are available here.
* Adding pure-certd init script and config script for using SNI via FTP
* Splitting Uploadscript into it's own init script
* Simplified init script by removing much old stuff, which it seems,
that it's not needed any more today. At least in my tests.
* Adding SVCNAME support.
* Removed sed for MAX_USER_LENGTH, as it's already default
* Removed DOCS for default docs
* Removed keepdir, since it looks like it's not needed anymore
* Overhauled eBuild
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/24592
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
net-ftp/pure-ftpd/files/pure-certd.initd | 19 ++++
net-ftp/pure-ftpd/files/pure-certd.script | 27 ++++++
net-ftp/pure-ftpd/files/pure-ftpd.confd-r4 | 5 +
net-ftp/pure-ftpd/files/pure-ftpd.initd-r12 | 23 +++++
net-ftp/pure-ftpd/files/pure-uploadscript.confd | 8 ++
net-ftp/pure-ftpd/files/pure-uploadscript.initd | 30 ++++++
...ftpd-9999.ebuild => pure-ftpd-1.0.50-r2.ebuild} | 101 ++++++++++++---------
net-ftp/pure-ftpd/pure-ftpd-9999.ebuild | 101 ++++++++++++---------
8 files changed, 224 insertions(+), 90 deletions(-)
diff --git a/net-ftp/pure-ftpd/files/pure-certd.initd b/net-ftp/pure-ftpd/files/pure-certd.initd
new file mode 100644
index 000000000000..1d254e5274a9
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-certd.initd
@@ -0,0 +1,19 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+certd_scriptfile="/etc/${SVCNAME}.sh"
+certd_socketfile="/run/${SVCNAME}.sock"
+pidfile="/run/pure-certd.pid"
+
+command="/usr/sbin/pure-certd"
+command_args="--pidfile ${pidfile} --run ${certd_scriptfile} --socket ${certd_socketfile}"
+command_background="true"
+
+start_pre() {
+ if [ ! -f "${certd_scriptfile}" ] ; then
+ eerror "The file ${certd_scriptfile} does not exist!"
+ eerror "Please create and configure the script."
+ return 1
+ fi
+}
diff --git a/net-ftp/pure-ftpd/files/pure-certd.script b/net-ftp/pure-ftpd/files/pure-certd.script
new file mode 100644
index 000000000000..77aa1bf9f702
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-certd.script
@@ -0,0 +1,27 @@
+#!/bin/sh
+# Copyright 1999-2022 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# Set default ssl directory
+SSL_DIR="/etc/ssl/pure-ftpd"
+
+# Check SNI and select certificate
+case "${CERTD_SNI_NAME}" in
+ domain1.tld)
+ FILE_CERT="${SSL_DIR}/domain1.tld.crt"
+ FILE_KEY="${SSL_DIR}/domain1.tld.key"
+ ;;
+
+ domain2.tld)
+ FILE_CERT="${SSL_DIR}/domain2.tld.crt"
+ FILE_KEY="${SSL_DIR}/domain2.tld.key"
+ ;;
+esac
+
+# Print selected certificate for 'pure-certd'.
+# You can modify 'action' for your needs.
+# See man page of 'pure-certd' for more information.
+echo "action:fallback"
+echo "cert_file:${FILE_CERT}"
+echo "key_file:${FILE_KEY}"
+echo "end"
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd.confd-r4 b/net-ftp/pure-ftpd/files/pure-ftpd.confd-r4
new file mode 100644
index 000000000000..d49b6c509c58
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-ftpd.confd-r4
@@ -0,0 +1,5 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Optionally depend on started Pure-Certd
+# RC_NEED="pure-certd"
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd.initd-r12 b/net-ftp/pure-ftpd/files/pure-ftpd.initd-r12
new file mode 100644
index 000000000000..c971125784b7
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-ftpd.initd-r12
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+ftpd_configfile="/etc/${SVCNAME}.conf"
+pidfile="/run/pure-ftpd.pid"
+
+command="/usr/sbin/pure-ftpd"
+command_args="${ftpd_configfile}"
+command_background="true"
+
+depend() {
+ need localmount
+ use netmount
+}
+
+start_pre() {
+ if [ ! -f "${ftpd_configfile}" ] ; then
+ eerror "The file ${ftpd_configfile} does not exist!"
+ eerror "Please create and configure the configuration file."
+ return 1
+ fi
+}
diff --git a/net-ftp/pure-ftpd/files/pure-uploadscript.confd b/net-ftp/pure-ftpd/files/pure-uploadscript.confd
new file mode 100644
index 000000000000..4b8fca0deb8f
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-uploadscript.confd
@@ -0,0 +1,8 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# If you want to process each file uploaded through Pure-FTPd, enter the name
+# of the script that should process the files below.
+# Use man pure-uploadscript to learn more about how to write this script.
+# UPLOADSCRIPT="/path/to/uploadscript"
diff --git a/net-ftp/pure-ftpd/files/pure-uploadscript.initd b/net-ftp/pure-ftpd/files/pure-uploadscript.initd
new file mode 100644
index 000000000000..f0c57742e749
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-uploadscript.initd
@@ -0,0 +1,30 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+ftpd_configfile="/etc/${SVCNAME/uploadscript/ftpd}.conf"
+pidfile="/run/pure-uploadscript.pid"
+
+command="/usr/sbin/pure-uploadscript"
+command_args="${UPLOADSCRIPT}"
+command_background="true"
+
+depend() {
+ need localmount
+ use netmount
+}
+
+start_pre() {
+ if [ -n "${UPLOADSCRIPT}" ] ; then
+ eerror "The file ${ftpd_configfile} does not exist!"
+ eerror "Please create and configure the uploadscript file."
+ return 1
+ fi
+
+ if ! grep "^CallUploadScript" "${ftpd_configfile}" ; then
+ eerror "You cannot start this uploadscript,"
+ eerror "unless you enable the option CallUploadScript"
+ eerror "in your main Pure-FTPd configuration file ${ftpd_configfile}"
+ return 1
+ fi
+}
diff --git a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.50-r2.ebuild
similarity index 59%
copy from net-ftp/pure-ftpd/pure-ftpd-9999.ebuild
copy to net-ftp/pure-ftpd/pure-ftpd-1.0.50-r2.ebuild
index 4be40c54c4ef..3d32b367c5cd 100644
--- a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild
+++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.50-r2.ebuild
@@ -6,66 +6,63 @@ EAPI=8
inherit flag-o-matic
DESCRIPTION="Fast, production-quality, standard-conformant FTP server"
-HOMEPAGE="http://www.pureftpd.org/"
+HOMEPAGE="https://www.pureftpd.org/project/pure-ftpd/"
if [[ "${PV}" == 9999 ]] ; then
inherit autotools git-r3
EGIT_REPO_URI="https://github.com/jedisct1/pure-ftpd.git"
else
- SRC_URI="ftp://ftp.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
- http://download.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2"
+ SRC_URI="
+ ftp://ftp.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
+ http://download.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
+ "
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
fi
LICENSE="BSD"
SLOT="0"
-
IUSE="anondel anonperm anonren anonres caps implicittls ldap mysql noiplog pam paranoidmsg postgres resolveids selinux ssl sysquota vchroot xinetd"
-
REQUIRED_USE="implicittls? ( ssl )"
-BDEPEND="sys-devel/autoconf-archive"
-
-DEPEND="dev-libs/libsodium:=
+DEPEND="
+ dev-libs/libsodium:=
virtual/libcrypt:=
caps? ( sys-libs/libcap )
ldap? ( >=net-nds/openldap-2.0.25:= )
mysql? ( || (
- dev-db/mariadb-connector-c
- dev-db/mysql-connector-c
- ) )
+ dev-db/mariadb-connector-c
+ dev-db/mysql-connector-c
+ )
+ )
pam? ( sys-libs/pam )
postgres? ( dev-db/postgresql:= )
- ssl? (
- >=dev-libs/openssl-0.9.6g:0=[-bindist(-)]
- )
+ ssl? ( dev-libs/openssl:0=[-bindist(-)] )
sysquota? ( sys-fs/quota[-rpc] )
- xinetd? ( virtual/inetd )"
+ xinetd? ( virtual/inetd )
+"
-RDEPEND="${DEPEND}
+RDEPEND="
+ ${DEPEND}
net-ftp/ftpbase
- selinux? ( sec-policy/selinux-ftp )"
+ selinux? ( sec-policy/selinux-ftp )
+"
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.28-pam.patch"
-)
+BDEPEND="sys-devel/autoconf-archive"
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.28-pam.patch" )
src_prepare() {
default
+
[[ "${PV}" == 9999 ]] && eautoreconf
}
src_configure() {
- # adjust max user length to something more appropriate
- # for virtual hosts. See bug #62472 for details.
- sed -e "s:# define MAX_USER_LENGTH 32U:# define MAX_USER_LENGTH 127U:" \
- -i "${S}/src/ftpd.h" || die "sed failed"
-
# Those features are only configurable like this, see bug #179375.
- use anondel && append-cppflags -DANON_CAN_DELETE
- use anonperm && append-cppflags -DANON_CAN_CHANGE_PERMS
- use anonren && append-cppflags -DANON_CAN_RENAME
- use anonres && append-cppflags -DANON_CAN_RESUME
- use resolveids && append-cppflags -DALWAYS_RESOLVE_IDS
+ use anondel && append-cppflags -DANON_CAN_DELETE
+ use anonperm && append-cppflags -DANON_CAN_CHANGE_PERMS
+ use anonren && append-cppflags -DANON_CAN_RENAME
+ use anonres && append-cppflags -DANON_CAN_RESUME
+ use resolveids && append-cppflags -DALWAYS_RESOLVE_IDS
# Do not auto-use SSP -- let the user select this.
export ax_cv_check_cflags___fstack_protector_all=no
@@ -73,7 +70,7 @@ src_configure() {
local myeconfargs=(
--enable-largefile
# Required for correct pid file location.
- # pure-ftpd appends "/run/pure-ftpd.pid" to the localstatedir
+ # Pure-FTPd appends "/run/pure-ftpd.pid" to the localstatedir
# path, and tries to write to that file even when being
# started in foreground. So we need to pin this to /
--localstatedir="${EPREFIX}"/
@@ -91,40 +88,41 @@ src_configure() {
--with-throttling
--with-uploadscript
--with-virtualhosts
+ $(use_with implicittls)
$(use_with ldap)
$(use_with mysql)
$(use_with pam)
$(use_with paranoidmsg)
$(use_with postgres pgsql)
$(use_with ssl tls)
- $(use_with implicittls)
- $(use_with vchroot virtualchroot)
$(use_with sysquota sysquotas)
+ $(use_with vchroot virtualchroot)
$(usex caps '' '--without-capabilities')
$(usex noiplog '--without-iplogging' '')
$(usex xinetd '' '--without-inetd')
)
+
econf "${myeconfargs[@]}"
}
src_install() {
- local DOCS=( AUTHORS ChangeLog FAQ HISTORY README* NEWS )
-
default
- newinitd "${FILESDIR}/pure-ftpd.rc11" ${PN}
- newconfd "${FILESDIR}/pure-ftpd.conf_d-3" ${PN}
+ newinitd "${FILESDIR}/pure-ftpd.initd-r12" pure-ftpd
+ newconfd "${FILESDIR}/pure-ftpd.confd-r4" pure-ftpd
+
+ newinitd "${FILESDIR}/pure-uploadscript.initd" pure-uploadscript
+ newconfd "${FILESDIR}/pure-uploadscript.confd" pure-uploadscript
if use implicittls ; then
- sed -i '/^SERVER/s@21@990@' "${ED}"/etc/conf.d/${PN} \
- || die "Adjusting default server port for implicittls usage failed!"
+ sed -e '/^# Bind/s@21@990@' -i "${ED}"/etc/pure-ftpd.conf || die
fi
- keepdir /var/lib/run/${PN}
+ if use ssl ; then
+ newinitd "${FILESDIR}/pure-certd.initd" pure-certd
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}/pure-ftpd.xinetd" ${PN}
+ exeinto /etc
+ newexe "${FILESDIR}/pure-certd.script" pure-certd.sh
fi
if use ldap ; then
@@ -134,17 +132,30 @@ src_install() {
insopts -m 0600
doins pureftpd-ldap.conf
fi
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}/pure-ftpd.xinetd" pure-ftpd
+ fi
}
pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
# This is a new installation
elog
- elog "Before starting Pure-FTPd, you have to edit the /etc/conf.d/pure-ftpd file!"
+ elog "Before starting Pure-FTPd, you have to edit the /etc/pure-ftpd.conf file!"
elog
ewarn "It's *really* important to read the README provided with Pure-FTPd!"
ewarn "Check out http://download.pureftpd.org/pub/pure-ftpd/doc/README for general info"
ewarn "and http://download.pureftpd.org/pub/pure-ftpd/doc/README.TLS for SSL/TLS info."
ewarn
+ else
+ for v in ${REPLACING_VERSIONS} ; do
+ if ver_test "${v}" -le "1.0.50" ; then
+ einfo "Configuration through /etc/conf.d/pure-ftpd is now deprecated!"
+ einfo "Please migrate your settings to the new configuration file."
+ einfo "Use /etc/pure-ftpd.conf to adjust your settings."
+ fi
+ done
fi
}
diff --git a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild b/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild
index 4be40c54c4ef..3d32b367c5cd 100644
--- a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild
+++ b/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild
@@ -6,66 +6,63 @@ EAPI=8
inherit flag-o-matic
DESCRIPTION="Fast, production-quality, standard-conformant FTP server"
-HOMEPAGE="http://www.pureftpd.org/"
+HOMEPAGE="https://www.pureftpd.org/project/pure-ftpd/"
if [[ "${PV}" == 9999 ]] ; then
inherit autotools git-r3
EGIT_REPO_URI="https://github.com/jedisct1/pure-ftpd.git"
else
- SRC_URI="ftp://ftp.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
- http://download.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2"
+ SRC_URI="
+ ftp://ftp.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
+ http://download.pureftpd.org/pub/${PN}/releases/${P}.tar.bz2
+ "
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
fi
LICENSE="BSD"
SLOT="0"
-
IUSE="anondel anonperm anonren anonres caps implicittls ldap mysql noiplog pam paranoidmsg postgres resolveids selinux ssl sysquota vchroot xinetd"
-
REQUIRED_USE="implicittls? ( ssl )"
-BDEPEND="sys-devel/autoconf-archive"
-
-DEPEND="dev-libs/libsodium:=
+DEPEND="
+ dev-libs/libsodium:=
virtual/libcrypt:=
caps? ( sys-libs/libcap )
ldap? ( >=net-nds/openldap-2.0.25:= )
mysql? ( || (
- dev-db/mariadb-connector-c
- dev-db/mysql-connector-c
- ) )
+ dev-db/mariadb-connector-c
+ dev-db/mysql-connector-c
+ )
+ )
pam? ( sys-libs/pam )
postgres? ( dev-db/postgresql:= )
- ssl? (
- >=dev-libs/openssl-0.9.6g:0=[-bindist(-)]
- )
+ ssl? ( dev-libs/openssl:0=[-bindist(-)] )
sysquota? ( sys-fs/quota[-rpc] )
- xinetd? ( virtual/inetd )"
+ xinetd? ( virtual/inetd )
+"
-RDEPEND="${DEPEND}
+RDEPEND="
+ ${DEPEND}
net-ftp/ftpbase
- selinux? ( sec-policy/selinux-ftp )"
+ selinux? ( sec-policy/selinux-ftp )
+"
-PATCHES=(
- "${FILESDIR}/${PN}-1.0.28-pam.patch"
-)
+BDEPEND="sys-devel/autoconf-archive"
+
+PATCHES=( "${FILESDIR}/${PN}-1.0.28-pam.patch" )
src_prepare() {
default
+
[[ "${PV}" == 9999 ]] && eautoreconf
}
src_configure() {
- # adjust max user length to something more appropriate
- # for virtual hosts. See bug #62472 for details.
- sed -e "s:# define MAX_USER_LENGTH 32U:# define MAX_USER_LENGTH 127U:" \
- -i "${S}/src/ftpd.h" || die "sed failed"
-
# Those features are only configurable like this, see bug #179375.
- use anondel && append-cppflags -DANON_CAN_DELETE
- use anonperm && append-cppflags -DANON_CAN_CHANGE_PERMS
- use anonren && append-cppflags -DANON_CAN_RENAME
- use anonres && append-cppflags -DANON_CAN_RESUME
- use resolveids && append-cppflags -DALWAYS_RESOLVE_IDS
+ use anondel && append-cppflags -DANON_CAN_DELETE
+ use anonperm && append-cppflags -DANON_CAN_CHANGE_PERMS
+ use anonren && append-cppflags -DANON_CAN_RENAME
+ use anonres && append-cppflags -DANON_CAN_RESUME
+ use resolveids && append-cppflags -DALWAYS_RESOLVE_IDS
# Do not auto-use SSP -- let the user select this.
export ax_cv_check_cflags___fstack_protector_all=no
@@ -73,7 +70,7 @@ src_configure() {
local myeconfargs=(
--enable-largefile
# Required for correct pid file location.
- # pure-ftpd appends "/run/pure-ftpd.pid" to the localstatedir
+ # Pure-FTPd appends "/run/pure-ftpd.pid" to the localstatedir
# path, and tries to write to that file even when being
# started in foreground. So we need to pin this to /
--localstatedir="${EPREFIX}"/
@@ -91,40 +88,41 @@ src_configure() {
--with-throttling
--with-uploadscript
--with-virtualhosts
+ $(use_with implicittls)
$(use_with ldap)
$(use_with mysql)
$(use_with pam)
$(use_with paranoidmsg)
$(use_with postgres pgsql)
$(use_with ssl tls)
- $(use_with implicittls)
- $(use_with vchroot virtualchroot)
$(use_with sysquota sysquotas)
+ $(use_with vchroot virtualchroot)
$(usex caps '' '--without-capabilities')
$(usex noiplog '--without-iplogging' '')
$(usex xinetd '' '--without-inetd')
)
+
econf "${myeconfargs[@]}"
}
src_install() {
- local DOCS=( AUTHORS ChangeLog FAQ HISTORY README* NEWS )
-
default
- newinitd "${FILESDIR}/pure-ftpd.rc11" ${PN}
- newconfd "${FILESDIR}/pure-ftpd.conf_d-3" ${PN}
+ newinitd "${FILESDIR}/pure-ftpd.initd-r12" pure-ftpd
+ newconfd "${FILESDIR}/pure-ftpd.confd-r4" pure-ftpd
+
+ newinitd "${FILESDIR}/pure-uploadscript.initd" pure-uploadscript
+ newconfd "${FILESDIR}/pure-uploadscript.confd" pure-uploadscript
if use implicittls ; then
- sed -i '/^SERVER/s@21@990@' "${ED}"/etc/conf.d/${PN} \
- || die "Adjusting default server port for implicittls usage failed!"
+ sed -e '/^# Bind/s@21@990@' -i "${ED}"/etc/pure-ftpd.conf || die
fi
- keepdir /var/lib/run/${PN}
+ if use ssl ; then
+ newinitd "${FILESDIR}/pure-certd.initd" pure-certd
- if use xinetd ; then
- insinto /etc/xinetd.d
- newins "${FILESDIR}/pure-ftpd.xinetd" ${PN}
+ exeinto /etc
+ newexe "${FILESDIR}/pure-certd.script" pure-certd.sh
fi
if use ldap ; then
@@ -134,17 +132,30 @@ src_install() {
insopts -m 0600
doins pureftpd-ldap.conf
fi
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}/pure-ftpd.xinetd" pure-ftpd
+ fi
}
pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
# This is a new installation
elog
- elog "Before starting Pure-FTPd, you have to edit the /etc/conf.d/pure-ftpd file!"
+ elog "Before starting Pure-FTPd, you have to edit the /etc/pure-ftpd.conf file!"
elog
ewarn "It's *really* important to read the README provided with Pure-FTPd!"
ewarn "Check out http://download.pureftpd.org/pub/pure-ftpd/doc/README for general info"
ewarn "and http://download.pureftpd.org/pub/pure-ftpd/doc/README.TLS for SSL/TLS info."
ewarn
+ else
+ for v in ${REPLACING_VERSIONS} ; do
+ if ver_test "${v}" -le "1.0.50" ; then
+ einfo "Configuration through /etc/conf.d/pure-ftpd is now deprecated!"
+ einfo "Please migrate your settings to the new configuration file."
+ einfo "Use /etc/pure-ftpd.conf to adjust your settings."
+ fi
+ done
fi
}
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/
@ 2023-05-07 12:34 Conrad Kostecki
0 siblings, 0 replies; 6+ messages in thread
From: Conrad Kostecki @ 2023-05-07 12:34 UTC (permalink / raw
To: gentoo-commits
commit: c3fe928536b125fae4f578bc23dc2c4ee3b49723
Author: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
AuthorDate: Sun May 7 12:23:18 2023 +0000
Commit: Conrad Kostecki <conikost <AT> gentoo <DOT> org>
CommitDate: Sun May 7 12:34:09 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3fe9285
net-ftp/pure-ftpd: fix implicit function declarations
Closes: https://bugs.gentoo.org/900068
Signed-off-by: Conrad Kostecki <conikost <AT> gentoo.org>
.../files/pure-ftpd-1.0.51-sys-sendfile.patch | 37 ++++++++++++++++++++++
...1.0.51-r1.ebuild => pure-ftpd-1.0.51-r2.ebuild} | 5 ++-
2 files changed, 41 insertions(+), 1 deletion(-)
diff --git a/net-ftp/pure-ftpd/files/pure-ftpd-1.0.51-sys-sendfile.patch b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.51-sys-sendfile.patch
new file mode 100644
index 000000000000..bc2973c1389c
--- /dev/null
+++ b/net-ftp/pure-ftpd/files/pure-ftpd-1.0.51-sys-sendfile.patch
@@ -0,0 +1,37 @@
+From 511315971f227ac2ce1481ff9e7350a607f78d23 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sun, 23 Apr 2023 06:27:20 +0100
+Subject: [PATCH] configure.ac: Silence harmless
+ -Wimplicit-function-declaration warning in hpux sendfile check
+
+We're currently looking for build systems where -Wimplicit-function-declaration
+is emitted by checks as it often implies a missing include, but in this case,
+it's fine - HPUX doesn't have a sendfile header, so it's just noise (and it
+won't be true on Linux anyway).
+
+But the check is run unconditionally and we already check if sendfile.h exists,
+so include the header conditionally if it exists, as it's harmless and it avoids
+it looking like there's a problem in pure-ftpd.
+
+Unfortunately, it's not so easy to silence the sendfilev check which has
+a similar (but different) problem because it uses AC_CHECK_FUNCS.
+
+Bug: https://bugs.gentoo.org/900068
+---
+ configure.ac | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 62768c8..0abb423 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -718,6 +718,9 @@ AC_MSG_CHECKING([if a hpuxish sendfile is available])
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+ #include <sys/socket.h>
+ #include <stdio.h>
++#ifdef HAVE_SYS_SENDFILE_H
++# include <sys/sendfile.h>
++#endif
+ ]], [[
+ do {
+ int fd = 0;
diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r1.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild
similarity index 97%
rename from net-ftp/pure-ftpd/pure-ftpd-1.0.51-r1.ebuild
rename to net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild
index 223cdb2a5ea7..78000f7885e9 100644
--- a/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r1.ebuild
+++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.51-r2.ebuild
@@ -48,7 +48,10 @@ RDEPEND="
BDEPEND="sys-devel/autoconf-archive"
-PATCHES=( "${FILESDIR}/${PN}-1.0.28-pam.patch" )
+PATCHES=(
+ "${FILESDIR}/${PN}-1.0.28-pam.patch"
+ "${FILESDIR}/${PN}-1.0.51-sys-sendfile.patch"
+)
src_prepare() {
default
^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-05-07 12:34 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-07 12:34 [gentoo-commits] repo/gentoo:master commit in: net-ftp/pure-ftpd/, net-ftp/pure-ftpd/files/ Conrad Kostecki
-- strict thread matches above, loose matches on Subject: below --
2022-04-16 13:45 Lars Wendler
2019-02-23 16:22 Thomas Deutschmann
2019-01-31 17:52 Thomas Deutschmann
2018-12-07 15:29 Lars Wendler
2017-04-05 20:26 Lars Wendler
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox