From 401101f9c8077911929d3f2b60a37098460a5d89 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 24 Mar 2022 23:59:54 +0000 Subject: gentoo resync : 25.03.2022 --- net-ftp/Manifest.gz | Bin 3350 -> 3345 bytes net-ftp/proftpd/Manifest | 10 +- net-ftp/proftpd/proftpd-1.3.7a-r2.ebuild | 277 --------------------------- net-ftp/proftpd/proftpd-1.3.7a-r3.ebuild | 277 +++++++++++++++++++++++++++ net-ftp/proftpd/proftpd-1.3.7b-r1.ebuild | 275 -------------------------- net-ftp/proftpd/proftpd-1.3.7b-r2.ebuild | 275 ++++++++++++++++++++++++++ net-ftp/proftpd/proftpd-1.3.7c-r1.ebuild | 275 ++++++++++++++++++++++++++ net-ftp/proftpd/proftpd-1.3.7c.ebuild | 275 -------------------------- net-ftp/proftpd/proftpd-1.3.8_rc1-r1.ebuild | 274 -------------------------- net-ftp/proftpd/proftpd-1.3.8_rc1-r3.ebuild | 274 ++++++++++++++++++++++++++ net-ftp/proftpd/proftpd-1.3.8_rc2-r2.ebuild | 274 ++++++++++++++++++++++++++ net-ftp/proftpd/proftpd-1.3.8_rc2.ebuild | 274 -------------------------- net-ftp/pure-ftpd/Manifest | 6 +- net-ftp/pure-ftpd/pure-ftpd-1.0.49-r5.ebuild | 160 ---------------- net-ftp/pure-ftpd/pure-ftpd-1.0.49-r6.ebuild | 160 ++++++++++++++++ net-ftp/pure-ftpd/pure-ftpd-1.0.50-r1.ebuild | 150 +++++++++++++++ net-ftp/pure-ftpd/pure-ftpd-1.0.50.ebuild | 150 --------------- net-ftp/pure-ftpd/pure-ftpd-9999.ebuild | 4 +- 18 files changed, 1695 insertions(+), 1695 deletions(-) delete mode 100644 net-ftp/proftpd/proftpd-1.3.7a-r2.ebuild create mode 100644 net-ftp/proftpd/proftpd-1.3.7a-r3.ebuild delete mode 100644 net-ftp/proftpd/proftpd-1.3.7b-r1.ebuild create mode 100644 net-ftp/proftpd/proftpd-1.3.7b-r2.ebuild create mode 100644 net-ftp/proftpd/proftpd-1.3.7c-r1.ebuild delete mode 100644 net-ftp/proftpd/proftpd-1.3.7c.ebuild delete mode 100644 net-ftp/proftpd/proftpd-1.3.8_rc1-r1.ebuild create mode 100644 net-ftp/proftpd/proftpd-1.3.8_rc1-r3.ebuild create mode 100644 net-ftp/proftpd/proftpd-1.3.8_rc2-r2.ebuild delete mode 100644 net-ftp/proftpd/proftpd-1.3.8_rc2.ebuild delete mode 100644 net-ftp/pure-ftpd/pure-ftpd-1.0.49-r5.ebuild create mode 100644 net-ftp/pure-ftpd/pure-ftpd-1.0.49-r6.ebuild create mode 100644 net-ftp/pure-ftpd/pure-ftpd-1.0.50-r1.ebuild delete mode 100644 net-ftp/pure-ftpd/pure-ftpd-1.0.50.ebuild (limited to 'net-ftp') diff --git a/net-ftp/Manifest.gz b/net-ftp/Manifest.gz index 223c1f8b204f..d66a77f5af0b 100644 Binary files a/net-ftp/Manifest.gz and b/net-ftp/Manifest.gz differ diff --git a/net-ftp/proftpd/Manifest b/net-ftp/proftpd/Manifest index 3c37b25d6e52..ef7a31a213bf 100644 --- a/net-ftp/proftpd/Manifest +++ b/net-ftp/proftpd/Manifest @@ -25,9 +25,9 @@ DIST proftpd-mod-case-0.7.tar.gz 13184 BLAKE2B bf2118d9b8ed97a5b192b92b515d17ac7 DIST proftpd-mod-diskuse-0.9.tar.gz 18596 BLAKE2B 38c704c8607f0f93b080e77fe793cfe0125c88acc6f818ecb059c6c21a983e040ff5f2c1b91e34ef4ba2666a808d896018c364d1f12ea38f0c477e79bdaa2120 SHA512 d41976bf2810e4b783e775e8c767ca2030c3b5df116219fd31cbbac7feaf9922c315bf4ea092881b0d6cf43f2f4c5dbcae61be3c3a833058d12f962a3024b975 DIST proftpd-mod-msg-0.4.1.tar.gz 8082 BLAKE2B 970b46b19d25bac22ecb01495270a523997a0b7d5b53b9470b4744b919adcf03d5bcee2df85ba88c4a4c20a9fc30dc01459ffb58c5dae8e78a52a7379bf36f11 SHA512 38ea63b1d355e1e10a6a4477596bf3fa28529a871c9fb8dbf093b5317f0743ef9cb59b986d0b8c1c7ed932dad5d5d571883d596fad2d3b793431824db4487012 DIST proftpd-mod_clamav-0.14rc2.tar.gz 19710 BLAKE2B 3435e198cf029337904d4666910414124a3b7e1529d4b12f7acd8a9be563009fff4d9a30eb132a2d7361d2c830e5601c4a00a8814282585b6915e991cc29bc13 SHA512 b8e56880fadf36513215fa4c20be6db7cdf1274337072a9b29c3c3477b3de4743ebcdb1179572ec4cb1501fac0064330c855b1f818bf0cc52f0e91170f059772 -EBUILD proftpd-1.3.7a-r2.ebuild 8651 BLAKE2B a6ffc21ccf8e6ffee545168ca28178f368aa26612b5c1e7bc678127154e3abc3cdb0fe4a47fa4dbabf01004c056675fba234988862a9c7bfaa26a57bce6dd250 SHA512 eb05acdaa6a34411642296244bbf7ab8cd02a74c3ba734e65a2af653d015787b91784f1ec6f90b6392d58dd00014126676aaa13d77d4dbbcbe115f31badd4672 -EBUILD proftpd-1.3.7b-r1.ebuild 8590 BLAKE2B da51907a856ea5f2a73e0848eeb823a98c1e5d83e306e4504a6efce66d6d49ab8bba9751a6c0624b8bad2f72636d48e41f1b6d528d1923339a9b571a20678275 SHA512 1b5463956071ffb58e936cfdfb89b3f69acc34c2bf25e8d4226005314cb80885fece23f6a62f5bfba5a68e6c655e78af882f355d5477424b160cae63bf616f72 -EBUILD proftpd-1.3.7c.ebuild 8584 BLAKE2B 2214ba19259e6a5f440038b97ba68b8147f6e76d0f84647cd3f29540607425c2673aa8bb31755cb2d39e3c8119444060adb61ca65efa705d8566375b1cd9897f SHA512 e954c9baea7a2cda0629576e70bcecb2f90f7228fe0016909b0e094168d9b1da26aeb0a1073f0b9bcb8dd3cb77c9909df79d2780035dc53f02557b60c0c1a772 -EBUILD proftpd-1.3.8_rc1-r1.ebuild 8547 BLAKE2B 08fcf0ce70873b8fbffc6cebc7a537a45067668c43aa99e73d0ec3dd365b4864e5f1d08e722ba3a5ad07681d7c0c24b4582f0383e0f0cb44829cc7faa2963261 SHA512 18e885afaff12e443d4c9999872e7d9dfb4b4805b8811c00514b69198b3ce6a74027d7d804caecf23303bfb4e64549b527be0c052e1029b1e602b34623ff14aa -EBUILD proftpd-1.3.8_rc2.ebuild 8541 BLAKE2B 8c6678359518eb55a50e6b9e5ba81385074e7bed7f7aac10f84fc2d32a6144b665742ed04c8e2e8539eb29179c83ee97eaacc99c96086ce5498d04988cbf7f83 SHA512 690e13e55ba9a3fccdb154e478dc7acd0e6deac5589ac569bad1a6b7ff626514131d93e8a452e3c2b28ea717805794b60fab07bb44dfa4a0c7bc694fcff47fa1 +EBUILD proftpd-1.3.7a-r3.ebuild 8653 BLAKE2B 688e5e00368427d4a09ee78d848bd27473c22bfc83ffce936ec85adeeb864de5e593344eadd6c47583c72d230fdd4c5023058f15711eb022df392dc94b13898f SHA512 4dd5946e4b4ca08517f9d878a81055d7d6d67ccaa443be03cce8b809105352379b8e93203dd45c680f140fa3ea9f8c63a4509e9aa27acf7a4760a8bf135a38c4 +EBUILD proftpd-1.3.7b-r2.ebuild 8592 BLAKE2B 10f54080274f391a72ad06219d017c7aacc0f44f6c155e7194dcecedd9eb713c3f3e76d7295b0ca9005fb4a5fb7f0998bd8e76d8a868e3c48e8789b8ab8b7fd8 SHA512 a87f6208a92d9edc19ebd16215ab98ad99724e960cfb6841093773786c34dc12904923b03afa983bb774f445c5b5d43ecc5cead3249592db81fb9233ba766923 +EBUILD proftpd-1.3.7c-r1.ebuild 8586 BLAKE2B d997f82ee97cda8a41cbaf354774e8299b6e304523bf551f8d243a81ab9b41912313c7320cd477cb1d2d1d439db00d37d12406394e6c12331733b292ac25f0fa SHA512 0b4e695957d8ffc803d01cdc73e6e4e8201e93376d7e76e967df2bdda06739bce058405a0461888b851cf0f5a8453e865c6969421032a91ebe2d8b755d6f39e9 +EBUILD proftpd-1.3.8_rc1-r3.ebuild 8549 BLAKE2B 3b01e038d93ad6cd7851e980d7b81b7252e661dbf59161a2df40cc69dc2d03faac2352ed239f1ad707a25f978a06ebacce25398cd67b189d6a52f386ae8a3581 SHA512 4957afbfec8e0afd677d1b0cdd1accee0bcb97f8e08b738766ad76e44394492913e8fea98538555c1894d300f6c32b57b394501fe35bc06f8376ae75f9250780 +EBUILD proftpd-1.3.8_rc2-r2.ebuild 8543 BLAKE2B f67f093117544e4471b3c293772a451de1cf01b23e3b2b2508b3f1393b97cec9d1fd8feaef18fa92b80de30191793ff31d279d60f5c81c4980cd40895843431a SHA512 21aecc2e5c423ba4deaa3be26683906108190438781b2a66b9fbf2540da0c3e0433f9c86a74b690b7b3be43c778220e25f5888d4c3e7128bdb05d992079d8423 MISC metadata.xml 2890 BLAKE2B 8d8df910c291d064a62eab80f05ba0524fbfc777eae7a0dc65809bd01eccc23f356dbbe4a1af4df43f2d83d964370cd38eb40421c7851dd130aefc5011eb6722 SHA512 99679d7d9c8ed947aa736e79da5031fccf4555a558ea8891b059f4a2989037e6a266a197d5e168f7a9c4d787f8dafb53277bcd4418532d91d8f089e3e56a57c9 diff --git a/net-ftp/proftpd/proftpd-1.3.7a-r2.ebuild b/net-ftp/proftpd/proftpd-1.3.7a-r2.ebuild deleted file mode 100644 index df1dad4e4a74..000000000000 --- a/net-ftp/proftpd/proftpd-1.3.7a-r2.ebuild +++ /dev/null @@ -1,277 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multilib systemd tmpfiles toolchain-funcs - -MOD_CASE="0.7" -MOD_CLAMAV="0.14rc2" -MOD_DISKUSE="0.9" -MOD_GSS="1.3.9" -MOD_MSG="0.4.1" -MOD_VROOT="0.9.4" - -DESCRIPTION="An advanced and very configurable FTP server" -HOMEPAGE="http://www.proftpd.org/ - http://www.castaglia.org/proftpd/ - https://github.com/jbenden/mod_clamav - http://gssmod.sourceforge.net/" -SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz - case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) - clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) - diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) - kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) - msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) - vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86" -IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 - kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius - ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" -# TODO: geoip -REQUIRED_USE="ban? ( ctrls ) - msg? ( ctrls ) - sftp? ( ssl ) - shaper? ( ctrls ) - - mysql? ( ssl ) - postgres? ( ssl ) - sqlite? ( ssl ) -" - -CDEPEND="virtual/libcrypt:= - acl? ( virtual/acl ) - caps? ( sys-libs/libcap ) - clamav? ( app-antivirus/clamav ) - kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap ) - memcache? ( >=dev-libs/libmemcached-0.41 ) - mysql? ( dev-db/mysql-connector-c:0= ) - nls? ( virtual/libiconv ) - ncurses? ( sys-libs/ncurses:0= ) - ssl? ( dev-libs/openssl:0= ) - pam? ( sys-libs/pam ) - pcre? ( dev-libs/libpcre ) - postgres? ( dev-db/postgresql:= ) - sodium? ( dev-libs/libsodium:0= ) - sqlite? ( dev-db/sqlite:3 ) -" -DEPEND="${CDEPEND} - test? ( dev-libs/check )" -RDEPEND="${CDEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -S="${WORKDIR}/${P/_/}" - -PATCHES=( - "${FILESDIR}"/${PN}-1.3.6-use-trace.patch - "${FILESDIR}"/${P}-tinfow-segv.patch - "${FILESDIR}"/${P}-no-ncurses.patch - "${FILESDIR}"/${P}-slibtool.patch -) - -RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. - -in_dir() { - pushd "${WORKDIR}/${1}" || die - shift - "$@" - popd -} - -src_prepare() { - # Skip 'install-conf' / Support LINGUAS - sed -i -e "/install-all/s/ install-conf//" Makefile.in || die - sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die - - # Prepare external modules - if use case; then - cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die - cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die - fi - - if use clamav ; then - cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die - eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch - fi - - if use diskuse; then - in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die - - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die - fi - - if use msg; then - in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch - - cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die - cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die - fi - - if use vroot; then - in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch - - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die - fi - - if use kerberos ; then - # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch - - # Support app-crypt/heimdal / Gentoo Bug #284853 - sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die - - # Remove obsolete DES / Gentoo Bug #324903 - # Replace 'rpm' lookups / Gentoo Bug #391021 - sed -i -e "/ac_gss_libs/s/ -ldes425//" \ - -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ - -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die - - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die - fi - - default - - tc-export CC -} - -src_configure() { - local c m - - use acl && m="${m}:mod_facl" - use ban && m="${m}:mod_ban" - use case && m="${m}:mod_case" - use clamav && m="${m}:mod_clamav" - use copy && m="${m}:mod_copy" - use ctrls && m="${m}:mod_ctrls_admin" - use deflate && m="${m}:mod_deflate" - if use diskuse ; then - in_dir mod_diskuse econf - m="${m}:mod_diskuse" - fi - use dynmasq && m="${m}:mod_dynmasq" - use exec && m="${m}:mod_exec" - use ifsession && m="${m}:mod_ifsession" - use ifversion && m="${m}:mod_ifversion" - if use kerberos ; then - in_dir mod_gss-${MOD_GSS} econf - m="${m}:mod_gss:mod_auth_gss" - fi - use ldap && m="${m}:mod_ldap" - use log-forensic && m="${m}:mod_log_forensic" - use msg && m="${m}:mod_msg" - if use mysql || use postgres || use sqlite ; then - m="${m}:mod_sql:mod_sql_passwd" - use mysql && m="${m}:mod_sql_mysql" - use postgres && m="${m}:mod_sql_postgres" - use sqlite && m="${m}:mod_sql_sqlite" - fi - use qos && m="${m}:mod_qos" - use radius && m="${m}:mod_radius" - use ratio && m="${m}:mod_ratio" - use readme && m="${m}:mod_readme" - use rewrite && m="${m}:mod_rewrite" - if use sftp ; then - m="${m}:mod_sftp" - use pam && m="${m}:mod_sftp_pam" - use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" - fi - use shaper && m="${m}:mod_shaper" - use sitemisc && m="${m}:mod_site_misc" - use snmp && m="${m}:mod_snmp" - if use softquota ; then - m="${m}:mod_quotatab:mod_quotatab_file" - use ldap && m="${m}:mod_quotatab_ldap" - use radius && m="${m}:mod_quotatab_radius" - use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" - fi - if use ssl ; then - m="${m}:mod_tls:mod_tls_shmcache" - use memcache && m="${m}:mod_tls_memcache" - fi - if use tcpd ; then - m="${m}:mod_wrap2:mod_wrap2_file" - use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" - fi - use unique-id && m="${m}:mod_unique_id" - use vroot && m="${m}:mod_vroot" - - if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then - einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" - m="${m}:${PROFTP_CUSTOM_MODULES}" - fi - - [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" - - econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ - $(use_enable acl facl) \ - $(use_enable authfile auth-file) \ - $(use_enable caps cap) \ - $(use_enable ctrls) \ - $(use_enable dso) \ - $(use_enable ident) \ - $(use_enable ipv6) \ - $(use_enable memcache) \ - $(use_enable ncurses) \ - $(use_enable nls) \ - $(use_enable ssl openssl) \ - $(use_enable pam auth-pam) \ - $(use_enable pcre) \ - $(use_enable sodium) \ - $(use_enable test tests) \ - --enable-trace \ - --enable-shadow \ - --enable-autoshadow \ - ${c:1} -} - -src_test() { - emake api-tests -C tests -} - -src_install() { - default - [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale - rm -rf "${ED}"/run "${ED}"/var/run - - newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd - insinto /etc/proftpd - doins "${FILESDIR}"/proftpd.conf.sample - - insinto /etc/xinetd.d - newins "${FILESDIR}"/proftpd.xinetd proftpd - - insinto /etc/logrotate.d - newins "${FILESDIR}"/${PN}.logrotate ${PN} - - dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES - - docinto html - dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html - - docinto rfc - dodoc doc/rfc/*.txt - - systemd_dounit "${FILESDIR}"/${PN}.service - newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf -} - -pkg_postinst() { - # Create /var/run files at package merge time: bug #650000 - tmpfiles_process ${PN}.conf -} diff --git a/net-ftp/proftpd/proftpd-1.3.7a-r3.ebuild b/net-ftp/proftpd/proftpd-1.3.7a-r3.ebuild new file mode 100644 index 000000000000..c3f063f49b27 --- /dev/null +++ b/net-ftp/proftpd/proftpd-1.3.7a-r3.ebuild @@ -0,0 +1,277 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib systemd tmpfiles toolchain-funcs + +MOD_CASE="0.7" +MOD_CLAMAV="0.14rc2" +MOD_DISKUSE="0.9" +MOD_GSS="1.3.9" +MOD_MSG="0.4.1" +MOD_VROOT="0.9.4" + +DESCRIPTION="An advanced and very configurable FTP server" +HOMEPAGE="http://www.proftpd.org/ + http://www.castaglia.org/proftpd/ + https://github.com/jbenden/mod_clamav + http://gssmod.sourceforge.net/" +SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz + case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) + clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) + diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) + kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) + msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) + vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86" +IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 + kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius + ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" +# TODO: geoip +REQUIRED_USE="ban? ( ctrls ) + msg? ( ctrls ) + sftp? ( ssl ) + shaper? ( ctrls ) + + mysql? ( ssl ) + postgres? ( ssl ) + sqlite? ( ssl ) +" + +CDEPEND="virtual/libcrypt:= + acl? ( virtual/acl ) + caps? ( sys-libs/libcap ) + clamav? ( app-antivirus/clamav ) + kerberos? ( virtual/krb5 ) + ldap? ( net-nds/openldap:= ) + memcache? ( >=dev-libs/libmemcached-0.41 ) + mysql? ( dev-db/mysql-connector-c:0= ) + nls? ( virtual/libiconv ) + ncurses? ( sys-libs/ncurses:0= ) + ssl? ( dev-libs/openssl:0= ) + pam? ( sys-libs/pam ) + pcre? ( dev-libs/libpcre ) + postgres? ( dev-db/postgresql:= ) + sodium? ( dev-libs/libsodium:0= ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${CDEPEND} + test? ( dev-libs/check )" +RDEPEND="${CDEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +S="${WORKDIR}/${P/_/}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.6-use-trace.patch + "${FILESDIR}"/${P}-tinfow-segv.patch + "${FILESDIR}"/${P}-no-ncurses.patch + "${FILESDIR}"/${P}-slibtool.patch +) + +RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. + +in_dir() { + pushd "${WORKDIR}/${1}" || die + shift + "$@" + popd +} + +src_prepare() { + # Skip 'install-conf' / Support LINGUAS + sed -i -e "/install-all/s/ install-conf//" Makefile.in || die + sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die + + # Prepare external modules + if use case; then + cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die + cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die + fi + + if use clamav ; then + cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die + eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch + fi + + if use diskuse; then + in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die + + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die + fi + + if use msg; then + in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch + + cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die + cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die + fi + + if use vroot; then + in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch + + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die + fi + + if use kerberos ; then + # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch + + # Support app-crypt/heimdal / Gentoo Bug #284853 + sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die + + # Remove obsolete DES / Gentoo Bug #324903 + # Replace 'rpm' lookups / Gentoo Bug #391021 + sed -i -e "/ac_gss_libs/s/ -ldes425//" \ + -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ + -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die + + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die + fi + + default + + tc-export CC +} + +src_configure() { + local c m + + use acl && m="${m}:mod_facl" + use ban && m="${m}:mod_ban" + use case && m="${m}:mod_case" + use clamav && m="${m}:mod_clamav" + use copy && m="${m}:mod_copy" + use ctrls && m="${m}:mod_ctrls_admin" + use deflate && m="${m}:mod_deflate" + if use diskuse ; then + in_dir mod_diskuse econf + m="${m}:mod_diskuse" + fi + use dynmasq && m="${m}:mod_dynmasq" + use exec && m="${m}:mod_exec" + use ifsession && m="${m}:mod_ifsession" + use ifversion && m="${m}:mod_ifversion" + if use kerberos ; then + in_dir mod_gss-${MOD_GSS} econf + m="${m}:mod_gss:mod_auth_gss" + fi + use ldap && m="${m}:mod_ldap" + use log-forensic && m="${m}:mod_log_forensic" + use msg && m="${m}:mod_msg" + if use mysql || use postgres || use sqlite ; then + m="${m}:mod_sql:mod_sql_passwd" + use mysql && m="${m}:mod_sql_mysql" + use postgres && m="${m}:mod_sql_postgres" + use sqlite && m="${m}:mod_sql_sqlite" + fi + use qos && m="${m}:mod_qos" + use radius && m="${m}:mod_radius" + use ratio && m="${m}:mod_ratio" + use readme && m="${m}:mod_readme" + use rewrite && m="${m}:mod_rewrite" + if use sftp ; then + m="${m}:mod_sftp" + use pam && m="${m}:mod_sftp_pam" + use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" + fi + use shaper && m="${m}:mod_shaper" + use sitemisc && m="${m}:mod_site_misc" + use snmp && m="${m}:mod_snmp" + if use softquota ; then + m="${m}:mod_quotatab:mod_quotatab_file" + use ldap && m="${m}:mod_quotatab_ldap" + use radius && m="${m}:mod_quotatab_radius" + use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" + fi + if use ssl ; then + m="${m}:mod_tls:mod_tls_shmcache" + use memcache && m="${m}:mod_tls_memcache" + fi + if use tcpd ; then + m="${m}:mod_wrap2:mod_wrap2_file" + use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" + fi + use unique-id && m="${m}:mod_unique_id" + use vroot && m="${m}:mod_vroot" + + if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then + einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" + m="${m}:${PROFTP_CUSTOM_MODULES}" + fi + + [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" + + econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ + $(use_enable acl facl) \ + $(use_enable authfile auth-file) \ + $(use_enable caps cap) \ + $(use_enable ctrls) \ + $(use_enable dso) \ + $(use_enable ident) \ + $(use_enable ipv6) \ + $(use_enable memcache) \ + $(use_enable ncurses) \ + $(use_enable nls) \ + $(use_enable ssl openssl) \ + $(use_enable pam auth-pam) \ + $(use_enable pcre) \ + $(use_enable sodium) \ + $(use_enable test tests) \ + --enable-trace \ + --enable-shadow \ + --enable-autoshadow \ + ${c:1} +} + +src_test() { + emake api-tests -C tests +} + +src_install() { + default + [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale + rm -rf "${ED}"/run "${ED}"/var/run + + newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd + insinto /etc/proftpd + doins "${FILESDIR}"/proftpd.conf.sample + + insinto /etc/xinetd.d + newins "${FILESDIR}"/proftpd.xinetd proftpd + + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}.logrotate ${PN} + + dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES + + docinto html + dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html + + docinto rfc + dodoc doc/rfc/*.txt + + systemd_dounit "${FILESDIR}"/${PN}.service + newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf +} + +pkg_postinst() { + # Create /var/run files at package merge time: bug #650000 + tmpfiles_process ${PN}.conf +} diff --git a/net-ftp/proftpd/proftpd-1.3.7b-r1.ebuild b/net-ftp/proftpd/proftpd-1.3.7b-r1.ebuild deleted file mode 100644 index a60f286ffbbe..000000000000 --- a/net-ftp/proftpd/proftpd-1.3.7b-r1.ebuild +++ /dev/null @@ -1,275 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multilib systemd tmpfiles toolchain-funcs - -MOD_CASE="0.7" -MOD_CLAMAV="0.14rc2" -MOD_DISKUSE="0.9" -MOD_GSS="1.3.9" -MOD_MSG="0.4.1" -MOD_VROOT="0.9.4" - -DESCRIPTION="An advanced and very configurable FTP server" -HOMEPAGE="http://www.proftpd.org/ - http://www.castaglia.org/proftpd/ - https://github.com/jbenden/mod_clamav - http://gssmod.sourceforge.net/" -SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz - case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) - clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) - diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) - kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) - msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) - vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 - kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius - ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" -# TODO: geoip -REQUIRED_USE="ban? ( ctrls ) - msg? ( ctrls ) - sftp? ( ssl ) - shaper? ( ctrls ) - - mysql? ( ssl ) - postgres? ( ssl ) - sqlite? ( ssl ) -" - -CDEPEND="virtual/libcrypt:= - acl? ( virtual/acl ) - caps? ( sys-libs/libcap ) - clamav? ( app-antivirus/clamav ) - kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap ) - memcache? ( >=dev-libs/libmemcached-0.41 ) - mysql? ( dev-db/mysql-connector-c:0= ) - nls? ( virtual/libiconv ) - ncurses? ( sys-libs/ncurses:0= ) - ssl? ( dev-libs/openssl:0= ) - pam? ( sys-libs/pam ) - pcre? ( dev-libs/libpcre ) - postgres? ( dev-db/postgresql:= ) - sodium? ( dev-libs/libsodium:0= ) - sqlite? ( dev-db/sqlite:3 ) -" -DEPEND="${CDEPEND} - test? ( dev-libs/check )" -RDEPEND="${CDEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -S="${WORKDIR}/${P/_/}" - -PATCHES=( - "${FILESDIR}"/${PN}-1.3.6-use-trace.patch - "${FILESDIR}"/${PN}-1.3.7a-slibtool.patch -) - -RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. - -in_dir() { - pushd "${WORKDIR}/${1}" || die - shift - "$@" - popd -} - -src_prepare() { - # Skip 'install-conf' / Support LINGUAS - sed -i -e "/install-all/s/ install-conf//" Makefile.in || die - sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die - - # Prepare external modules - if use case; then - cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die - cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die - fi - - if use clamav ; then - cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die - eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch - fi - - if use diskuse; then - in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die - - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die - fi - - if use msg; then - in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch - - cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die - cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die - fi - - if use vroot; then - in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch - - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die - fi - - if use kerberos ; then - # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch - - # Support app-crypt/heimdal / Gentoo Bug #284853 - sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die - - # Remove obsolete DES / Gentoo Bug #324903 - # Replace 'rpm' lookups / Gentoo Bug #391021 - sed -i -e "/ac_gss_libs/s/ -ldes425//" \ - -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ - -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die - - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die - fi - - default - - tc-export CC -} - -src_configure() { - local c m - - use acl && m="${m}:mod_facl" - use ban && m="${m}:mod_ban" - use case && m="${m}:mod_case" - use clamav && m="${m}:mod_clamav" - use copy && m="${m}:mod_copy" - use ctrls && m="${m}:mod_ctrls_admin" - use deflate && m="${m}:mod_deflate" - if use diskuse ; then - in_dir mod_diskuse econf - m="${m}:mod_diskuse" - fi - use dynmasq && m="${m}:mod_dynmasq" - use exec && m="${m}:mod_exec" - use ifsession && m="${m}:mod_ifsession" - use ifversion && m="${m}:mod_ifversion" - if use kerberos ; then - in_dir mod_gss-${MOD_GSS} econf - m="${m}:mod_gss:mod_auth_gss" - fi - use ldap && m="${m}:mod_ldap" - use log-forensic && m="${m}:mod_log_forensic" - use msg && m="${m}:mod_msg" - if use mysql || use postgres || use sqlite ; then - m="${m}:mod_sql:mod_sql_passwd" - use mysql && m="${m}:mod_sql_mysql" - use postgres && m="${m}:mod_sql_postgres" - use sqlite && m="${m}:mod_sql_sqlite" - fi - use qos && m="${m}:mod_qos" - use radius && m="${m}:mod_radius" - use ratio && m="${m}:mod_ratio" - use readme && m="${m}:mod_readme" - use rewrite && m="${m}:mod_rewrite" - if use sftp ; then - m="${m}:mod_sftp" - use pam && m="${m}:mod_sftp_pam" - use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" - fi - use shaper && m="${m}:mod_shaper" - use sitemisc && m="${m}:mod_site_misc" - use snmp && m="${m}:mod_snmp" - if use softquota ; then - m="${m}:mod_quotatab:mod_quotatab_file" - use ldap && m="${m}:mod_quotatab_ldap" - use radius && m="${m}:mod_quotatab_radius" - use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" - fi - if use ssl ; then - m="${m}:mod_tls:mod_tls_shmcache" - use memcache && m="${m}:mod_tls_memcache" - fi - if use tcpd ; then - m="${m}:mod_wrap2:mod_wrap2_file" - use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" - fi - use unique-id && m="${m}:mod_unique_id" - use vroot && m="${m}:mod_vroot" - - if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then - einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" - m="${m}:${PROFTP_CUSTOM_MODULES}" - fi - - [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" - - econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ - $(use_enable acl facl) \ - $(use_enable authfile auth-file) \ - $(use_enable caps cap) \ - $(use_enable ctrls) \ - $(use_enable dso) \ - $(use_enable ident) \ - $(use_enable ipv6) \ - $(use_enable memcache) \ - $(use_enable ncurses) \ - $(use_enable nls) \ - $(use_enable ssl openssl) \ - $(use_enable pam auth-pam) \ - $(use_enable pcre) \ - $(use_enable sodium) \ - $(use_enable test tests) \ - --enable-trace \ - --enable-shadow \ - --enable-autoshadow \ - ${c:1} -} - -src_test() { - emake api-tests -C tests -} - -src_install() { - default - [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale - rm -rf "${ED}"/run "${ED}"/var/run - - newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd - insinto /etc/proftpd - doins "${FILESDIR}"/proftpd.conf.sample - - insinto /etc/xinetd.d - newins "${FILESDIR}"/proftpd.xinetd proftpd - - insinto /etc/logrotate.d - newins "${FILESDIR}"/${PN}.logrotate ${PN} - - dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES - - docinto html - dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html - - docinto rfc - dodoc doc/rfc/*.txt - - systemd_dounit "${FILESDIR}"/${PN}.service - newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf -} - -pkg_postinst() { - # Create /var/run files at package merge time: bug #650000 - tmpfiles_process ${PN}.conf -} diff --git a/net-ftp/proftpd/proftpd-1.3.7b-r2.ebuild b/net-ftp/proftpd/proftpd-1.3.7b-r2.ebuild new file mode 100644 index 000000000000..85ccd857198b --- /dev/null +++ b/net-ftp/proftpd/proftpd-1.3.7b-r2.ebuild @@ -0,0 +1,275 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib systemd tmpfiles toolchain-funcs + +MOD_CASE="0.7" +MOD_CLAMAV="0.14rc2" +MOD_DISKUSE="0.9" +MOD_GSS="1.3.9" +MOD_MSG="0.4.1" +MOD_VROOT="0.9.4" + +DESCRIPTION="An advanced and very configurable FTP server" +HOMEPAGE="http://www.proftpd.org/ + http://www.castaglia.org/proftpd/ + https://github.com/jbenden/mod_clamav + http://gssmod.sourceforge.net/" +SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz + case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) + clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) + diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) + kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) + msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) + vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" +IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 + kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius + ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" +# TODO: geoip +REQUIRED_USE="ban? ( ctrls ) + msg? ( ctrls ) + sftp? ( ssl ) + shaper? ( ctrls ) + + mysql? ( ssl ) + postgres? ( ssl ) + sqlite? ( ssl ) +" + +CDEPEND="virtual/libcrypt:= + acl? ( virtual/acl ) + caps? ( sys-libs/libcap ) + clamav? ( app-antivirus/clamav ) + kerberos? ( virtual/krb5 ) + ldap? ( net-nds/openldap:= ) + memcache? ( >=dev-libs/libmemcached-0.41 ) + mysql? ( dev-db/mysql-connector-c:0= ) + nls? ( virtual/libiconv ) + ncurses? ( sys-libs/ncurses:0= ) + ssl? ( dev-libs/openssl:0= ) + pam? ( sys-libs/pam ) + pcre? ( dev-libs/libpcre ) + postgres? ( dev-db/postgresql:= ) + sodium? ( dev-libs/libsodium:0= ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${CDEPEND} + test? ( dev-libs/check )" +RDEPEND="${CDEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +S="${WORKDIR}/${P/_/}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.6-use-trace.patch + "${FILESDIR}"/${PN}-1.3.7a-slibtool.patch +) + +RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. + +in_dir() { + pushd "${WORKDIR}/${1}" || die + shift + "$@" + popd +} + +src_prepare() { + # Skip 'install-conf' / Support LINGUAS + sed -i -e "/install-all/s/ install-conf//" Makefile.in || die + sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die + + # Prepare external modules + if use case; then + cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die + cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die + fi + + if use clamav ; then + cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die + eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch + fi + + if use diskuse; then + in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die + + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die + fi + + if use msg; then + in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch + + cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die + cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die + fi + + if use vroot; then + in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch + + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die + fi + + if use kerberos ; then + # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch + + # Support app-crypt/heimdal / Gentoo Bug #284853 + sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die + + # Remove obsolete DES / Gentoo Bug #324903 + # Replace 'rpm' lookups / Gentoo Bug #391021 + sed -i -e "/ac_gss_libs/s/ -ldes425//" \ + -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ + -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die + + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die + fi + + default + + tc-export CC +} + +src_configure() { + local c m + + use acl && m="${m}:mod_facl" + use ban && m="${m}:mod_ban" + use case && m="${m}:mod_case" + use clamav && m="${m}:mod_clamav" + use copy && m="${m}:mod_copy" + use ctrls && m="${m}:mod_ctrls_admin" + use deflate && m="${m}:mod_deflate" + if use diskuse ; then + in_dir mod_diskuse econf + m="${m}:mod_diskuse" + fi + use dynmasq && m="${m}:mod_dynmasq" + use exec && m="${m}:mod_exec" + use ifsession && m="${m}:mod_ifsession" + use ifversion && m="${m}:mod_ifversion" + if use kerberos ; then + in_dir mod_gss-${MOD_GSS} econf + m="${m}:mod_gss:mod_auth_gss" + fi + use ldap && m="${m}:mod_ldap" + use log-forensic && m="${m}:mod_log_forensic" + use msg && m="${m}:mod_msg" + if use mysql || use postgres || use sqlite ; then + m="${m}:mod_sql:mod_sql_passwd" + use mysql && m="${m}:mod_sql_mysql" + use postgres && m="${m}:mod_sql_postgres" + use sqlite && m="${m}:mod_sql_sqlite" + fi + use qos && m="${m}:mod_qos" + use radius && m="${m}:mod_radius" + use ratio && m="${m}:mod_ratio" + use readme && m="${m}:mod_readme" + use rewrite && m="${m}:mod_rewrite" + if use sftp ; then + m="${m}:mod_sftp" + use pam && m="${m}:mod_sftp_pam" + use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" + fi + use shaper && m="${m}:mod_shaper" + use sitemisc && m="${m}:mod_site_misc" + use snmp && m="${m}:mod_snmp" + if use softquota ; then + m="${m}:mod_quotatab:mod_quotatab_file" + use ldap && m="${m}:mod_quotatab_ldap" + use radius && m="${m}:mod_quotatab_radius" + use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" + fi + if use ssl ; then + m="${m}:mod_tls:mod_tls_shmcache" + use memcache && m="${m}:mod_tls_memcache" + fi + if use tcpd ; then + m="${m}:mod_wrap2:mod_wrap2_file" + use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" + fi + use unique-id && m="${m}:mod_unique_id" + use vroot && m="${m}:mod_vroot" + + if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then + einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" + m="${m}:${PROFTP_CUSTOM_MODULES}" + fi + + [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" + + econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ + $(use_enable acl facl) \ + $(use_enable authfile auth-file) \ + $(use_enable caps cap) \ + $(use_enable ctrls) \ + $(use_enable dso) \ + $(use_enable ident) \ + $(use_enable ipv6) \ + $(use_enable memcache) \ + $(use_enable ncurses) \ + $(use_enable nls) \ + $(use_enable ssl openssl) \ + $(use_enable pam auth-pam) \ + $(use_enable pcre) \ + $(use_enable sodium) \ + $(use_enable test tests) \ + --enable-trace \ + --enable-shadow \ + --enable-autoshadow \ + ${c:1} +} + +src_test() { + emake api-tests -C tests +} + +src_install() { + default + [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale + rm -rf "${ED}"/run "${ED}"/var/run + + newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd + insinto /etc/proftpd + doins "${FILESDIR}"/proftpd.conf.sample + + insinto /etc/xinetd.d + newins "${FILESDIR}"/proftpd.xinetd proftpd + + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}.logrotate ${PN} + + dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES + + docinto html + dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html + + docinto rfc + dodoc doc/rfc/*.txt + + systemd_dounit "${FILESDIR}"/${PN}.service + newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf +} + +pkg_postinst() { + # Create /var/run files at package merge time: bug #650000 + tmpfiles_process ${PN}.conf +} diff --git a/net-ftp/proftpd/proftpd-1.3.7c-r1.ebuild b/net-ftp/proftpd/proftpd-1.3.7c-r1.ebuild new file mode 100644 index 000000000000..ad2ce6dcf9d1 --- /dev/null +++ b/net-ftp/proftpd/proftpd-1.3.7c-r1.ebuild @@ -0,0 +1,275 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib systemd tmpfiles toolchain-funcs + +MOD_CASE="0.7" +MOD_CLAMAV="0.14rc2" +MOD_DISKUSE="0.9" +MOD_GSS="1.3.9" +MOD_MSG="0.4.1" +MOD_VROOT="0.9.4" + +DESCRIPTION="An advanced and very configurable FTP server" +HOMEPAGE="http://www.proftpd.org/ + http://www.castaglia.org/proftpd/ + https://github.com/jbenden/mod_clamav + http://gssmod.sourceforge.net/" +SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz + case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) + clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) + diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) + kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) + msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) + vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86" +IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 + kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius + ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" +# TODO: geoip +REQUIRED_USE="ban? ( ctrls ) + msg? ( ctrls ) + sftp? ( ssl ) + shaper? ( ctrls ) + + mysql? ( ssl ) + postgres? ( ssl ) + sqlite? ( ssl ) +" + +CDEPEND="virtual/libcrypt:= + acl? ( virtual/acl ) + caps? ( sys-libs/libcap ) + clamav? ( app-antivirus/clamav ) + kerberos? ( virtual/krb5 ) + ldap? ( net-nds/openldap:= ) + memcache? ( >=dev-libs/libmemcached-0.41 ) + mysql? ( dev-db/mysql-connector-c:0= ) + nls? ( virtual/libiconv ) + ncurses? ( sys-libs/ncurses:0= ) + ssl? ( dev-libs/openssl:0= ) + pam? ( sys-libs/pam ) + pcre? ( dev-libs/libpcre ) + postgres? ( dev-db/postgresql:= ) + sodium? ( dev-libs/libsodium:0= ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${CDEPEND} + test? ( dev-libs/check )" +RDEPEND="${CDEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +S="${WORKDIR}/${P/_/}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.6-use-trace.patch + "${FILESDIR}"/${PN}-1.3.7a-slibtool.patch +) + +RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. + +in_dir() { + pushd "${WORKDIR}/${1}" || die + shift + "$@" + popd +} + +src_prepare() { + # Skip 'install-conf' / Support LINGUAS + sed -i -e "/install-all/s/ install-conf//" Makefile.in || die + sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die + + # Prepare external modules + if use case; then + cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die + cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die + fi + + if use clamav ; then + cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die + eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch + fi + + if use diskuse; then + in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die + + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die + fi + + if use msg; then + in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch + + cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die + cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die + fi + + if use vroot; then + in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch + + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die + fi + + if use kerberos ; then + # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch + + # Support app-crypt/heimdal / Gentoo Bug #284853 + sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die + + # Remove obsolete DES / Gentoo Bug #324903 + # Replace 'rpm' lookups / Gentoo Bug #391021 + sed -i -e "/ac_gss_libs/s/ -ldes425//" \ + -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ + -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die + + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die + fi + + default + + tc-export CC +} + +src_configure() { + local c m + + use acl && m="${m}:mod_facl" + use ban && m="${m}:mod_ban" + use case && m="${m}:mod_case" + use clamav && m="${m}:mod_clamav" + use copy && m="${m}:mod_copy" + use ctrls && m="${m}:mod_ctrls_admin" + use deflate && m="${m}:mod_deflate" + if use diskuse ; then + in_dir mod_diskuse econf + m="${m}:mod_diskuse" + fi + use dynmasq && m="${m}:mod_dynmasq" + use exec && m="${m}:mod_exec" + use ifsession && m="${m}:mod_ifsession" + use ifversion && m="${m}:mod_ifversion" + if use kerberos ; then + in_dir mod_gss-${MOD_GSS} econf + m="${m}:mod_gss:mod_auth_gss" + fi + use ldap && m="${m}:mod_ldap" + use log-forensic && m="${m}:mod_log_forensic" + use msg && m="${m}:mod_msg" + if use mysql || use postgres || use sqlite ; then + m="${m}:mod_sql:mod_sql_passwd" + use mysql && m="${m}:mod_sql_mysql" + use postgres && m="${m}:mod_sql_postgres" + use sqlite && m="${m}:mod_sql_sqlite" + fi + use qos && m="${m}:mod_qos" + use radius && m="${m}:mod_radius" + use ratio && m="${m}:mod_ratio" + use readme && m="${m}:mod_readme" + use rewrite && m="${m}:mod_rewrite" + if use sftp ; then + m="${m}:mod_sftp" + use pam && m="${m}:mod_sftp_pam" + use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" + fi + use shaper && m="${m}:mod_shaper" + use sitemisc && m="${m}:mod_site_misc" + use snmp && m="${m}:mod_snmp" + if use softquota ; then + m="${m}:mod_quotatab:mod_quotatab_file" + use ldap && m="${m}:mod_quotatab_ldap" + use radius && m="${m}:mod_quotatab_radius" + use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" + fi + if use ssl ; then + m="${m}:mod_tls:mod_tls_shmcache" + use memcache && m="${m}:mod_tls_memcache" + fi + if use tcpd ; then + m="${m}:mod_wrap2:mod_wrap2_file" + use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" + fi + use unique-id && m="${m}:mod_unique_id" + use vroot && m="${m}:mod_vroot" + + if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then + einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" + m="${m}:${PROFTP_CUSTOM_MODULES}" + fi + + [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" + + econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ + $(use_enable acl facl) \ + $(use_enable authfile auth-file) \ + $(use_enable caps cap) \ + $(use_enable ctrls) \ + $(use_enable dso) \ + $(use_enable ident) \ + $(use_enable ipv6) \ + $(use_enable memcache) \ + $(use_enable ncurses) \ + $(use_enable nls) \ + $(use_enable ssl openssl) \ + $(use_enable pam auth-pam) \ + $(use_enable pcre) \ + $(use_enable sodium) \ + $(use_enable test tests) \ + --enable-trace \ + --enable-shadow \ + --enable-autoshadow \ + ${c:1} +} + +src_test() { + emake api-tests -C tests +} + +src_install() { + default + [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale + rm -rf "${ED}"/run "${ED}"/var/run + + newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd + insinto /etc/proftpd + doins "${FILESDIR}"/proftpd.conf.sample + + insinto /etc/xinetd.d + newins "${FILESDIR}"/proftpd.xinetd proftpd + + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}.logrotate ${PN} + + dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES + + docinto html + dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html + + docinto rfc + dodoc doc/rfc/*.txt + + systemd_dounit "${FILESDIR}"/${PN}.service + newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf +} + +pkg_postinst() { + # Create /var/run files at package merge time: bug #650000 + tmpfiles_process ${PN}.conf +} diff --git a/net-ftp/proftpd/proftpd-1.3.7c.ebuild b/net-ftp/proftpd/proftpd-1.3.7c.ebuild deleted file mode 100644 index e1eab3fccc3b..000000000000 --- a/net-ftp/proftpd/proftpd-1.3.7c.ebuild +++ /dev/null @@ -1,275 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multilib systemd tmpfiles toolchain-funcs - -MOD_CASE="0.7" -MOD_CLAMAV="0.14rc2" -MOD_DISKUSE="0.9" -MOD_GSS="1.3.9" -MOD_MSG="0.4.1" -MOD_VROOT="0.9.4" - -DESCRIPTION="An advanced and very configurable FTP server" -HOMEPAGE="http://www.proftpd.org/ - http://www.castaglia.org/proftpd/ - https://github.com/jbenden/mod_clamav - http://gssmod.sourceforge.net/" -SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz - case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) - clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) - diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) - kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) - msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) - vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86" -IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 - kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius - ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" -# TODO: geoip -REQUIRED_USE="ban? ( ctrls ) - msg? ( ctrls ) - sftp? ( ssl ) - shaper? ( ctrls ) - - mysql? ( ssl ) - postgres? ( ssl ) - sqlite? ( ssl ) -" - -CDEPEND="virtual/libcrypt:= - acl? ( virtual/acl ) - caps? ( sys-libs/libcap ) - clamav? ( app-antivirus/clamav ) - kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap ) - memcache? ( >=dev-libs/libmemcached-0.41 ) - mysql? ( dev-db/mysql-connector-c:0= ) - nls? ( virtual/libiconv ) - ncurses? ( sys-libs/ncurses:0= ) - ssl? ( dev-libs/openssl:0= ) - pam? ( sys-libs/pam ) - pcre? ( dev-libs/libpcre ) - postgres? ( dev-db/postgresql:= ) - sodium? ( dev-libs/libsodium:0= ) - sqlite? ( dev-db/sqlite:3 ) -" -DEPEND="${CDEPEND} - test? ( dev-libs/check )" -RDEPEND="${CDEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -S="${WORKDIR}/${P/_/}" - -PATCHES=( - "${FILESDIR}"/${PN}-1.3.6-use-trace.patch - "${FILESDIR}"/${PN}-1.3.7a-slibtool.patch -) - -RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. - -in_dir() { - pushd "${WORKDIR}/${1}" || die - shift - "$@" - popd -} - -src_prepare() { - # Skip 'install-conf' / Support LINGUAS - sed -i -e "/install-all/s/ install-conf//" Makefile.in || die - sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die - - # Prepare external modules - if use case; then - cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die - cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die - fi - - if use clamav ; then - cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die - eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch - fi - - if use diskuse; then - in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die - - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die - fi - - if use msg; then - in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch - - cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die - cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die - fi - - if use vroot; then - in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch - - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die - fi - - if use kerberos ; then - # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch - - # Support app-crypt/heimdal / Gentoo Bug #284853 - sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die - - # Remove obsolete DES / Gentoo Bug #324903 - # Replace 'rpm' lookups / Gentoo Bug #391021 - sed -i -e "/ac_gss_libs/s/ -ldes425//" \ - -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ - -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die - - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die - fi - - default - - tc-export CC -} - -src_configure() { - local c m - - use acl && m="${m}:mod_facl" - use ban && m="${m}:mod_ban" - use case && m="${m}:mod_case" - use clamav && m="${m}:mod_clamav" - use copy && m="${m}:mod_copy" - use ctrls && m="${m}:mod_ctrls_admin" - use deflate && m="${m}:mod_deflate" - if use diskuse ; then - in_dir mod_diskuse econf - m="${m}:mod_diskuse" - fi - use dynmasq && m="${m}:mod_dynmasq" - use exec && m="${m}:mod_exec" - use ifsession && m="${m}:mod_ifsession" - use ifversion && m="${m}:mod_ifversion" - if use kerberos ; then - in_dir mod_gss-${MOD_GSS} econf - m="${m}:mod_gss:mod_auth_gss" - fi - use ldap && m="${m}:mod_ldap" - use log-forensic && m="${m}:mod_log_forensic" - use msg && m="${m}:mod_msg" - if use mysql || use postgres || use sqlite ; then - m="${m}:mod_sql:mod_sql_passwd" - use mysql && m="${m}:mod_sql_mysql" - use postgres && m="${m}:mod_sql_postgres" - use sqlite && m="${m}:mod_sql_sqlite" - fi - use qos && m="${m}:mod_qos" - use radius && m="${m}:mod_radius" - use ratio && m="${m}:mod_ratio" - use readme && m="${m}:mod_readme" - use rewrite && m="${m}:mod_rewrite" - if use sftp ; then - m="${m}:mod_sftp" - use pam && m="${m}:mod_sftp_pam" - use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" - fi - use shaper && m="${m}:mod_shaper" - use sitemisc && m="${m}:mod_site_misc" - use snmp && m="${m}:mod_snmp" - if use softquota ; then - m="${m}:mod_quotatab:mod_quotatab_file" - use ldap && m="${m}:mod_quotatab_ldap" - use radius && m="${m}:mod_quotatab_radius" - use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" - fi - if use ssl ; then - m="${m}:mod_tls:mod_tls_shmcache" - use memcache && m="${m}:mod_tls_memcache" - fi - if use tcpd ; then - m="${m}:mod_wrap2:mod_wrap2_file" - use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" - fi - use unique-id && m="${m}:mod_unique_id" - use vroot && m="${m}:mod_vroot" - - if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then - einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" - m="${m}:${PROFTP_CUSTOM_MODULES}" - fi - - [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" - - econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ - $(use_enable acl facl) \ - $(use_enable authfile auth-file) \ - $(use_enable caps cap) \ - $(use_enable ctrls) \ - $(use_enable dso) \ - $(use_enable ident) \ - $(use_enable ipv6) \ - $(use_enable memcache) \ - $(use_enable ncurses) \ - $(use_enable nls) \ - $(use_enable ssl openssl) \ - $(use_enable pam auth-pam) \ - $(use_enable pcre) \ - $(use_enable sodium) \ - $(use_enable test tests) \ - --enable-trace \ - --enable-shadow \ - --enable-autoshadow \ - ${c:1} -} - -src_test() { - emake api-tests -C tests -} - -src_install() { - default - [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale - rm -rf "${ED}"/run "${ED}"/var/run - - newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd - insinto /etc/proftpd - doins "${FILESDIR}"/proftpd.conf.sample - - insinto /etc/xinetd.d - newins "${FILESDIR}"/proftpd.xinetd proftpd - - insinto /etc/logrotate.d - newins "${FILESDIR}"/${PN}.logrotate ${PN} - - dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES - - docinto html - dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html - - docinto rfc - dodoc doc/rfc/*.txt - - systemd_dounit "${FILESDIR}"/${PN}.service - newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf -} - -pkg_postinst() { - # Create /var/run files at package merge time: bug #650000 - tmpfiles_process ${PN}.conf -} diff --git a/net-ftp/proftpd/proftpd-1.3.8_rc1-r1.ebuild b/net-ftp/proftpd/proftpd-1.3.8_rc1-r1.ebuild deleted file mode 100644 index 24743199c475..000000000000 --- a/net-ftp/proftpd/proftpd-1.3.8_rc1-r1.ebuild +++ /dev/null @@ -1,274 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multilib systemd tmpfiles toolchain-funcs - -MOD_CASE="0.7" -MOD_CLAMAV="0.14rc2" -MOD_DISKUSE="0.9" -MOD_GSS="1.3.9" -MOD_MSG="0.4.1" -MOD_VROOT="0.9.4" - -DESCRIPTION="An advanced and very configurable FTP server" -HOMEPAGE="http://www.proftpd.org/ - http://www.castaglia.org/proftpd/ - https://github.com/jbenden/mod_clamav - http://gssmod.sourceforge.net/" -SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz - case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) - clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) - diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) - kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) - msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) - vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 - kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius - ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" -# TODO: geoip -REQUIRED_USE="ban? ( ctrls ) - msg? ( ctrls ) - sftp? ( ssl ) - shaper? ( ctrls ) - - mysql? ( ssl ) - postgres? ( ssl ) - sqlite? ( ssl ) -" - -CDEPEND="virtual/libcrypt:= - acl? ( virtual/acl ) - caps? ( sys-libs/libcap ) - clamav? ( app-antivirus/clamav ) - kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap ) - memcache? ( >=dev-libs/libmemcached-0.41 ) - mysql? ( dev-db/mysql-connector-c:0= ) - nls? ( virtual/libiconv ) - ncurses? ( sys-libs/ncurses:0= ) - ssl? ( dev-libs/openssl:0= ) - pam? ( sys-libs/pam ) - pcre? ( dev-libs/libpcre ) - postgres? ( dev-db/postgresql:= ) - sodium? ( dev-libs/libsodium:0= ) - sqlite? ( dev-db/sqlite:3 ) -" -DEPEND="${CDEPEND} - test? ( dev-libs/check )" -RDEPEND="${CDEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -S="${WORKDIR}/${P/_/}" - -PATCHES=( - "${FILESDIR}"/${PN}-1.3.6-use-trace.patch -) - -RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. - -in_dir() { - pushd "${WORKDIR}/${1}" || die - shift - "$@" - popd -} - -src_prepare() { - # Skip 'install-conf' / Support LINGUAS - sed -i -e "/install-all/s/ install-conf//" Makefile.in || die - sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die - - # Prepare external modules - if use case; then - cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die - cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die - fi - - if use clamav ; then - cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die - eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch - fi - - if use diskuse; then - in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die - - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die - fi - - if use msg; then - in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch - - cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die - cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die - fi - - if use vroot; then - in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch - - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die - fi - - if use kerberos ; then - # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch - - # Support app-crypt/heimdal / Gentoo Bug #284853 - sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die - - # Remove obsolete DES / Gentoo Bug #324903 - # Replace 'rpm' lookups / Gentoo Bug #391021 - sed -i -e "/ac_gss_libs/s/ -ldes425//" \ - -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ - -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die - - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die - fi - - default - - tc-export CC -} - -src_configure() { - local c m - - use acl && m="${m}:mod_facl" - use ban && m="${m}:mod_ban" - use case && m="${m}:mod_case" - use clamav && m="${m}:mod_clamav" - use copy && m="${m}:mod_copy" - use ctrls && m="${m}:mod_ctrls_admin" - use deflate && m="${m}:mod_deflate" - if use diskuse ; then - in_dir mod_diskuse econf - m="${m}:mod_diskuse" - fi - use dynmasq && m="${m}:mod_dynmasq" - use exec && m="${m}:mod_exec" - use ifsession && m="${m}:mod_ifsession" - use ifversion && m="${m}:mod_ifversion" - if use kerberos ; then - in_dir mod_gss-${MOD_GSS} econf - m="${m}:mod_gss:mod_auth_gss" - fi - use ldap && m="${m}:mod_ldap" - use log-forensic && m="${m}:mod_log_forensic" - use msg && m="${m}:mod_msg" - if use mysql || use postgres || use sqlite ; then - m="${m}:mod_sql:mod_sql_passwd" - use mysql && m="${m}:mod_sql_mysql" - use postgres && m="${m}:mod_sql_postgres" - use sqlite && m="${m}:mod_sql_sqlite" - fi - use qos && m="${m}:mod_qos" - use radius && m="${m}:mod_radius" - use ratio && m="${m}:mod_ratio" - use readme && m="${m}:mod_readme" - use rewrite && m="${m}:mod_rewrite" - if use sftp ; then - m="${m}:mod_sftp" - use pam && m="${m}:mod_sftp_pam" - use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" - fi - use shaper && m="${m}:mod_shaper" - use sitemisc && m="${m}:mod_site_misc" - use snmp && m="${m}:mod_snmp" - if use softquota ; then - m="${m}:mod_quotatab:mod_quotatab_file" - use ldap && m="${m}:mod_quotatab_ldap" - use radius && m="${m}:mod_quotatab_radius" - use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" - fi - if use ssl ; then - m="${m}:mod_tls:mod_tls_shmcache" - use memcache && m="${m}:mod_tls_memcache" - fi - if use tcpd ; then - m="${m}:mod_wrap2:mod_wrap2_file" - use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" - fi - use unique-id && m="${m}:mod_unique_id" - use vroot && m="${m}:mod_vroot" - - if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then - einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" - m="${m}:${PROFTP_CUSTOM_MODULES}" - fi - - [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" - - econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ - $(use_enable acl facl) \ - $(use_enable authfile auth-file) \ - $(use_enable caps cap) \ - $(use_enable ctrls) \ - $(use_enable dso) \ - $(use_enable ident) \ - $(use_enable ipv6) \ - $(use_enable memcache) \ - $(use_enable ncurses) \ - $(use_enable nls) \ - $(use_enable ssl openssl) \ - $(use_enable pam auth-pam) \ - $(use_enable pcre) \ - $(use_enable sodium) \ - $(use_enable test tests) \ - --enable-trace \ - --enable-shadow \ - --enable-autoshadow \ - ${c:1} -} - -src_test() { - emake api-tests -C tests -} - -src_install() { - default - [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale - rm -rf "${ED}"/run "${ED}"/var/run - - newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd - insinto /etc/proftpd - doins "${FILESDIR}"/proftpd.conf.sample - - insinto /etc/xinetd.d - newins "${FILESDIR}"/proftpd.xinetd proftpd - - insinto /etc/logrotate.d - newins "${FILESDIR}"/${PN}.logrotate ${PN} - - dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES - - docinto html - dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html - - docinto rfc - dodoc doc/rfc/*.txt - - systemd_dounit "${FILESDIR}"/${PN}.service - newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf -} - -pkg_postinst() { - # Create /var/run files at package merge time: bug #650000 - tmpfiles_process ${PN}.conf -} diff --git a/net-ftp/proftpd/proftpd-1.3.8_rc1-r3.ebuild b/net-ftp/proftpd/proftpd-1.3.8_rc1-r3.ebuild new file mode 100644 index 000000000000..58c91dffc600 --- /dev/null +++ b/net-ftp/proftpd/proftpd-1.3.8_rc1-r3.ebuild @@ -0,0 +1,274 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib systemd tmpfiles toolchain-funcs + +MOD_CASE="0.7" +MOD_CLAMAV="0.14rc2" +MOD_DISKUSE="0.9" +MOD_GSS="1.3.9" +MOD_MSG="0.4.1" +MOD_VROOT="0.9.4" + +DESCRIPTION="An advanced and very configurable FTP server" +HOMEPAGE="http://www.proftpd.org/ + http://www.castaglia.org/proftpd/ + https://github.com/jbenden/mod_clamav + http://gssmod.sourceforge.net/" +SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz + case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) + clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) + diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) + kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) + msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) + vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" +IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 + kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius + ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" +# TODO: geoip +REQUIRED_USE="ban? ( ctrls ) + msg? ( ctrls ) + sftp? ( ssl ) + shaper? ( ctrls ) + + mysql? ( ssl ) + postgres? ( ssl ) + sqlite? ( ssl ) +" + +CDEPEND="virtual/libcrypt:= + acl? ( virtual/acl ) + caps? ( sys-libs/libcap ) + clamav? ( app-antivirus/clamav ) + kerberos? ( virtual/krb5 ) + ldap? ( net-nds/openldap:= ) + memcache? ( >=dev-libs/libmemcached-0.41 ) + mysql? ( dev-db/mysql-connector-c:0= ) + nls? ( virtual/libiconv ) + ncurses? ( sys-libs/ncurses:0= ) + ssl? ( dev-libs/openssl:0= ) + pam? ( sys-libs/pam ) + pcre? ( dev-libs/libpcre ) + postgres? ( dev-db/postgresql:= ) + sodium? ( dev-libs/libsodium:0= ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${CDEPEND} + test? ( dev-libs/check )" +RDEPEND="${CDEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +S="${WORKDIR}/${P/_/}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.6-use-trace.patch +) + +RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. + +in_dir() { + pushd "${WORKDIR}/${1}" || die + shift + "$@" + popd +} + +src_prepare() { + # Skip 'install-conf' / Support LINGUAS + sed -i -e "/install-all/s/ install-conf//" Makefile.in || die + sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die + + # Prepare external modules + if use case; then + cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die + cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die + fi + + if use clamav ; then + cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die + eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch + fi + + if use diskuse; then + in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die + + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die + fi + + if use msg; then + in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch + + cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die + cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die + fi + + if use vroot; then + in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch + + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die + fi + + if use kerberos ; then + # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch + + # Support app-crypt/heimdal / Gentoo Bug #284853 + sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die + + # Remove obsolete DES / Gentoo Bug #324903 + # Replace 'rpm' lookups / Gentoo Bug #391021 + sed -i -e "/ac_gss_libs/s/ -ldes425//" \ + -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ + -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die + + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die + fi + + default + + tc-export CC +} + +src_configure() { + local c m + + use acl && m="${m}:mod_facl" + use ban && m="${m}:mod_ban" + use case && m="${m}:mod_case" + use clamav && m="${m}:mod_clamav" + use copy && m="${m}:mod_copy" + use ctrls && m="${m}:mod_ctrls_admin" + use deflate && m="${m}:mod_deflate" + if use diskuse ; then + in_dir mod_diskuse econf + m="${m}:mod_diskuse" + fi + use dynmasq && m="${m}:mod_dynmasq" + use exec && m="${m}:mod_exec" + use ifsession && m="${m}:mod_ifsession" + use ifversion && m="${m}:mod_ifversion" + if use kerberos ; then + in_dir mod_gss-${MOD_GSS} econf + m="${m}:mod_gss:mod_auth_gss" + fi + use ldap && m="${m}:mod_ldap" + use log-forensic && m="${m}:mod_log_forensic" + use msg && m="${m}:mod_msg" + if use mysql || use postgres || use sqlite ; then + m="${m}:mod_sql:mod_sql_passwd" + use mysql && m="${m}:mod_sql_mysql" + use postgres && m="${m}:mod_sql_postgres" + use sqlite && m="${m}:mod_sql_sqlite" + fi + use qos && m="${m}:mod_qos" + use radius && m="${m}:mod_radius" + use ratio && m="${m}:mod_ratio" + use readme && m="${m}:mod_readme" + use rewrite && m="${m}:mod_rewrite" + if use sftp ; then + m="${m}:mod_sftp" + use pam && m="${m}:mod_sftp_pam" + use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" + fi + use shaper && m="${m}:mod_shaper" + use sitemisc && m="${m}:mod_site_misc" + use snmp && m="${m}:mod_snmp" + if use softquota ; then + m="${m}:mod_quotatab:mod_quotatab_file" + use ldap && m="${m}:mod_quotatab_ldap" + use radius && m="${m}:mod_quotatab_radius" + use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" + fi + if use ssl ; then + m="${m}:mod_tls:mod_tls_shmcache" + use memcache && m="${m}:mod_tls_memcache" + fi + if use tcpd ; then + m="${m}:mod_wrap2:mod_wrap2_file" + use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" + fi + use unique-id && m="${m}:mod_unique_id" + use vroot && m="${m}:mod_vroot" + + if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then + einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" + m="${m}:${PROFTP_CUSTOM_MODULES}" + fi + + [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" + + econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ + $(use_enable acl facl) \ + $(use_enable authfile auth-file) \ + $(use_enable caps cap) \ + $(use_enable ctrls) \ + $(use_enable dso) \ + $(use_enable ident) \ + $(use_enable ipv6) \ + $(use_enable memcache) \ + $(use_enable ncurses) \ + $(use_enable nls) \ + $(use_enable ssl openssl) \ + $(use_enable pam auth-pam) \ + $(use_enable pcre) \ + $(use_enable sodium) \ + $(use_enable test tests) \ + --enable-trace \ + --enable-shadow \ + --enable-autoshadow \ + ${c:1} +} + +src_test() { + emake api-tests -C tests +} + +src_install() { + default + [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale + rm -rf "${ED}"/run "${ED}"/var/run + + newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd + insinto /etc/proftpd + doins "${FILESDIR}"/proftpd.conf.sample + + insinto /etc/xinetd.d + newins "${FILESDIR}"/proftpd.xinetd proftpd + + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}.logrotate ${PN} + + dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES + + docinto html + dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html + + docinto rfc + dodoc doc/rfc/*.txt + + systemd_dounit "${FILESDIR}"/${PN}.service + newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf +} + +pkg_postinst() { + # Create /var/run files at package merge time: bug #650000 + tmpfiles_process ${PN}.conf +} diff --git a/net-ftp/proftpd/proftpd-1.3.8_rc2-r2.ebuild b/net-ftp/proftpd/proftpd-1.3.8_rc2-r2.ebuild new file mode 100644 index 000000000000..b21589b1457e --- /dev/null +++ b/net-ftp/proftpd/proftpd-1.3.8_rc2-r2.ebuild @@ -0,0 +1,274 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib systemd tmpfiles toolchain-funcs + +MOD_CASE="0.7" +MOD_CLAMAV="0.14rc2" +MOD_DISKUSE="0.9" +MOD_GSS="1.3.9" +MOD_MSG="0.4.1" +MOD_VROOT="0.9.4" + +DESCRIPTION="An advanced and very configurable FTP server" +HOMEPAGE="http://www.proftpd.org/ + http://www.castaglia.org/proftpd/ + https://github.com/jbenden/mod_clamav + http://gssmod.sourceforge.net/" +SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz + case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) + clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) + diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) + kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) + msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) + vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86" +IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 + kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius + ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" +# TODO: geoip +REQUIRED_USE="ban? ( ctrls ) + msg? ( ctrls ) + sftp? ( ssl ) + shaper? ( ctrls ) + + mysql? ( ssl ) + postgres? ( ssl ) + sqlite? ( ssl ) +" + +CDEPEND="virtual/libcrypt:= + acl? ( virtual/acl ) + caps? ( sys-libs/libcap ) + clamav? ( app-antivirus/clamav ) + kerberos? ( virtual/krb5 ) + ldap? ( net-nds/openldap:= ) + memcache? ( >=dev-libs/libmemcached-0.41 ) + mysql? ( dev-db/mysql-connector-c:0= ) + nls? ( virtual/libiconv ) + ncurses? ( sys-libs/ncurses:0= ) + ssl? ( dev-libs/openssl:0= ) + pam? ( sys-libs/pam ) + pcre? ( dev-libs/libpcre ) + postgres? ( dev-db/postgresql:= ) + sodium? ( dev-libs/libsodium:0= ) + sqlite? ( dev-db/sqlite:3 ) +" +DEPEND="${CDEPEND} + test? ( dev-libs/check )" +RDEPEND="${CDEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +S="${WORKDIR}/${P/_/}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.6-use-trace.patch +) + +RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. + +in_dir() { + pushd "${WORKDIR}/${1}" || die + shift + "$@" + popd +} + +src_prepare() { + # Skip 'install-conf' / Support LINGUAS + sed -i -e "/install-all/s/ install-conf//" Makefile.in || die + sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die + + # Prepare external modules + if use case; then + cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die + cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die + fi + + if use clamav ; then + cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die + eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch + fi + + if use diskuse; then + in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die + + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die + cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die + fi + + if use msg; then + in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch + + cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die + cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die + fi + + if use vroot; then + in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch + + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die + cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die + fi + + if use kerberos ; then + # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch + + # Support app-crypt/heimdal / Gentoo Bug #284853 + sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die + + # Remove obsolete DES / Gentoo Bug #324903 + # Replace 'rpm' lookups / Gentoo Bug #391021 + sed -i -e "/ac_gss_libs/s/ -ldes425//" \ + -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ + -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die + + # ./configure will modify files. Symlink them instead of copying + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die + ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die + + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die + cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die + fi + + default + + tc-export CC +} + +src_configure() { + local c m + + use acl && m="${m}:mod_facl" + use ban && m="${m}:mod_ban" + use case && m="${m}:mod_case" + use clamav && m="${m}:mod_clamav" + use copy && m="${m}:mod_copy" + use ctrls && m="${m}:mod_ctrls_admin" + use deflate && m="${m}:mod_deflate" + if use diskuse ; then + in_dir mod_diskuse econf + m="${m}:mod_diskuse" + fi + use dynmasq && m="${m}:mod_dynmasq" + use exec && m="${m}:mod_exec" + use ifsession && m="${m}:mod_ifsession" + use ifversion && m="${m}:mod_ifversion" + if use kerberos ; then + in_dir mod_gss-${MOD_GSS} econf + m="${m}:mod_gss:mod_auth_gss" + fi + use ldap && m="${m}:mod_ldap" + use log-forensic && m="${m}:mod_log_forensic" + use msg && m="${m}:mod_msg" + if use mysql || use postgres || use sqlite ; then + m="${m}:mod_sql:mod_sql_passwd" + use mysql && m="${m}:mod_sql_mysql" + use postgres && m="${m}:mod_sql_postgres" + use sqlite && m="${m}:mod_sql_sqlite" + fi + use qos && m="${m}:mod_qos" + use radius && m="${m}:mod_radius" + use ratio && m="${m}:mod_ratio" + use readme && m="${m}:mod_readme" + use rewrite && m="${m}:mod_rewrite" + if use sftp ; then + m="${m}:mod_sftp" + use pam && m="${m}:mod_sftp_pam" + use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" + fi + use shaper && m="${m}:mod_shaper" + use sitemisc && m="${m}:mod_site_misc" + use snmp && m="${m}:mod_snmp" + if use softquota ; then + m="${m}:mod_quotatab:mod_quotatab_file" + use ldap && m="${m}:mod_quotatab_ldap" + use radius && m="${m}:mod_quotatab_radius" + use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" + fi + if use ssl ; then + m="${m}:mod_tls:mod_tls_shmcache" + use memcache && m="${m}:mod_tls_memcache" + fi + if use tcpd ; then + m="${m}:mod_wrap2:mod_wrap2_file" + use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" + fi + use unique-id && m="${m}:mod_unique_id" + use vroot && m="${m}:mod_vroot" + + if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then + einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" + m="${m}:${PROFTP_CUSTOM_MODULES}" + fi + + [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" + + econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ + $(use_enable acl facl) \ + $(use_enable authfile auth-file) \ + $(use_enable caps cap) \ + $(use_enable ctrls) \ + $(use_enable dso) \ + $(use_enable ident) \ + $(use_enable ipv6) \ + $(use_enable memcache) \ + $(use_enable ncurses) \ + $(use_enable nls) \ + $(use_enable ssl openssl) \ + $(use_enable pam auth-pam) \ + $(use_enable pcre) \ + $(use_enable sodium) \ + $(use_enable test tests) \ + --enable-trace \ + --enable-shadow \ + --enable-autoshadow \ + ${c:1} +} + +src_test() { + emake api-tests -C tests +} + +src_install() { + default + [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale + rm -rf "${ED}"/run "${ED}"/var/run + + newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd + insinto /etc/proftpd + doins "${FILESDIR}"/proftpd.conf.sample + + insinto /etc/xinetd.d + newins "${FILESDIR}"/proftpd.xinetd proftpd + + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}.logrotate ${PN} + + dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES + + docinto html + dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html + + docinto rfc + dodoc doc/rfc/*.txt + + systemd_dounit "${FILESDIR}"/${PN}.service + newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf +} + +pkg_postinst() { + # Create /var/run files at package merge time: bug #650000 + tmpfiles_process ${PN}.conf +} diff --git a/net-ftp/proftpd/proftpd-1.3.8_rc2.ebuild b/net-ftp/proftpd/proftpd-1.3.8_rc2.ebuild deleted file mode 100644 index 1dfcd3c17181..000000000000 --- a/net-ftp/proftpd/proftpd-1.3.8_rc2.ebuild +++ /dev/null @@ -1,274 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit multilib systemd tmpfiles toolchain-funcs - -MOD_CASE="0.7" -MOD_CLAMAV="0.14rc2" -MOD_DISKUSE="0.9" -MOD_GSS="1.3.9" -MOD_MSG="0.4.1" -MOD_VROOT="0.9.4" - -DESCRIPTION="An advanced and very configurable FTP server" -HOMEPAGE="http://www.proftpd.org/ - http://www.castaglia.org/proftpd/ - https://github.com/jbenden/mod_clamav - http://gssmod.sourceforge.net/" -SRC_URI="ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz - case? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-case-${MOD_CASE}.tar.gz ) - clamav? ( https://github.com/jbenden/mod_clamav/archive/v${MOD_CLAMAV}.tar.gz -> ${PN}-mod_clamav-${MOD_CLAMAV}.tar.gz ) - diskuse? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-diskuse-${MOD_DISKUSE}.tar.gz ) - kerberos? ( mirror://sourceforge/gssmod/mod_gss-${MOD_GSS}.tar.gz ) - msg? ( http://www.castaglia.org/${PN}/modules/${PN}-mod-msg-${MOD_MSG}.tar.gz ) - vroot? ( https://github.com/Castaglia/${PN}-mod_vroot/archive/v${MOD_VROOT}.tar.gz -> mod_vroot-${MOD_VROOT}.tar.gz )" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86" -IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident ipv6 - kerberos ldap log-forensic memcache msg mysql ncurses nls pam +pcre postgres qos radius - ratio readme rewrite selinux sftp shaper sitemisc snmp sodium softquota sqlite ssl tcpd test unique-id vroot" -# TODO: geoip -REQUIRED_USE="ban? ( ctrls ) - msg? ( ctrls ) - sftp? ( ssl ) - shaper? ( ctrls ) - - mysql? ( ssl ) - postgres? ( ssl ) - sqlite? ( ssl ) -" - -CDEPEND="virtual/libcrypt:= - acl? ( virtual/acl ) - caps? ( sys-libs/libcap ) - clamav? ( app-antivirus/clamav ) - kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap ) - memcache? ( >=dev-libs/libmemcached-0.41 ) - mysql? ( dev-db/mysql-connector-c:0= ) - nls? ( virtual/libiconv ) - ncurses? ( sys-libs/ncurses:0= ) - ssl? ( dev-libs/openssl:0= ) - pam? ( sys-libs/pam ) - pcre? ( dev-libs/libpcre ) - postgres? ( dev-db/postgresql:= ) - sodium? ( dev-libs/libsodium:0= ) - sqlite? ( dev-db/sqlite:3 ) -" -DEPEND="${CDEPEND} - test? ( dev-libs/check )" -RDEPEND="${CDEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -S="${WORKDIR}/${P/_/}" - -PATCHES=( - "${FILESDIR}"/${PN}-1.3.6-use-trace.patch -) - -RESTRICT=test # Some tests are ran in chroot. Confuse sandbox. - -in_dir() { - pushd "${WORKDIR}/${1}" || die - shift - "$@" - popd -} - -src_prepare() { - # Skip 'install-conf' / Support LINGUAS - sed -i -e "/install-all/s/ install-conf//" Makefile.in || die - sed -i -e "s/^LANGS=.*$/LANGS=${LINGUAS}/" locale/Makefile.in || die - - # Prepare external modules - if use case; then - cp -v "${WORKDIR}"/mod_case/mod_case.c contrib || die - cp -v "${WORKDIR}"/mod_case/mod_case.html doc/contrib || die - fi - - if use clamav ; then - cp -v "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/mod_clamav.{c,h} contrib || die - eapply -p0 "${WORKDIR}"/mod_clamav-${MOD_CLAMAV}/001-add-mod_clamav-to-tests.patch - fi - - if use diskuse; then - in_dir mod_diskuse eapply "${FILESDIR}"/${PN}-1.3.6_rc4-diskuse-refresh-api.patch - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_diskuse/mod_diskuse.h "${S}"/contrib || die - - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.c "${S}"/contrib || die - cp -v "${WORKDIR}"/mod_diskuse/mod_diskuse.html "${S}"/doc/contrib || die - fi - - if use msg; then - in_dir mod_msg eapply "${FILESDIR}"/${PN}-1.3.6_rc4-msg-refresh-api.patch - - cp -v "${WORKDIR}"/mod_msg/mod_msg.c contrib || die - cp -v "${WORKDIR}"/mod_msg/mod_msg.html doc/contrib || die - fi - - if use vroot; then - in_dir ${PN}-mod_vroot-${MOD_VROOT} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-vroot-refresh-api.patch - - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.c contrib || die - cp -v "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT}/mod_vroot.html doc/contrib || die - fi - - if use kerberos ; then - # in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch - - # Support app-crypt/heimdal / Gentoo Bug #284853 - sed -i -e "s/krb5_principal2principalname/_\0/" "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c.in || die - - # Remove obsolete DES / Gentoo Bug #324903 - # Replace 'rpm' lookups / Gentoo Bug #391021 - sed -i -e "/ac_gss_libs/s/ -ldes425//" \ - -e "s/ac_libdir=\`rpm -q -l.*$/ac_libdir=\/usr\/$(get_libdir)\//" \ - -e "s/ac_includedir=\`rpm -q -l.*$/ac_includedir=\/usr\/include\//" "${WORKDIR}"/mod_gss-${MOD_GSS}/configure{,.ac} || die - - # ./configure will modify files. Symlink them instead of copying - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_auth_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.c "${S}"/contrib || die - ln -sv "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.h "${S}"/include || die - - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/README.mod_{auth_gss,gss} "${S}" || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/mod_gss.html "${S}"/doc/contrib || die - cp -v "${WORKDIR}"/mod_gss-${MOD_GSS}/rfc{1509,2228}.txt "${S}"/doc/rfc || die - fi - - default - - tc-export CC -} - -src_configure() { - local c m - - use acl && m="${m}:mod_facl" - use ban && m="${m}:mod_ban" - use case && m="${m}:mod_case" - use clamav && m="${m}:mod_clamav" - use copy && m="${m}:mod_copy" - use ctrls && m="${m}:mod_ctrls_admin" - use deflate && m="${m}:mod_deflate" - if use diskuse ; then - in_dir mod_diskuse econf - m="${m}:mod_diskuse" - fi - use dynmasq && m="${m}:mod_dynmasq" - use exec && m="${m}:mod_exec" - use ifsession && m="${m}:mod_ifsession" - use ifversion && m="${m}:mod_ifversion" - if use kerberos ; then - in_dir mod_gss-${MOD_GSS} econf - m="${m}:mod_gss:mod_auth_gss" - fi - use ldap && m="${m}:mod_ldap" - use log-forensic && m="${m}:mod_log_forensic" - use msg && m="${m}:mod_msg" - if use mysql || use postgres || use sqlite ; then - m="${m}:mod_sql:mod_sql_passwd" - use mysql && m="${m}:mod_sql_mysql" - use postgres && m="${m}:mod_sql_postgres" - use sqlite && m="${m}:mod_sql_sqlite" - fi - use qos && m="${m}:mod_qos" - use radius && m="${m}:mod_radius" - use ratio && m="${m}:mod_ratio" - use readme && m="${m}:mod_readme" - use rewrite && m="${m}:mod_rewrite" - if use sftp ; then - m="${m}:mod_sftp" - use pam && m="${m}:mod_sftp_pam" - use mysql || use postgres || use sqlite && m="${m}:mod_sftp_sql" - fi - use shaper && m="${m}:mod_shaper" - use sitemisc && m="${m}:mod_site_misc" - use snmp && m="${m}:mod_snmp" - if use softquota ; then - m="${m}:mod_quotatab:mod_quotatab_file" - use ldap && m="${m}:mod_quotatab_ldap" - use radius && m="${m}:mod_quotatab_radius" - use mysql || use postgres || use sqlite && m="${m}:mod_quotatab_sql" - fi - if use ssl ; then - m="${m}:mod_tls:mod_tls_shmcache" - use memcache && m="${m}:mod_tls_memcache" - fi - if use tcpd ; then - m="${m}:mod_wrap2:mod_wrap2_file" - use mysql || use postgres || use sqlite && m="${m}:mod_wrap2_sql" - fi - use unique-id && m="${m}:mod_unique_id" - use vroot && m="${m}:mod_vroot" - - if [[ -n ${PROFTP_CUSTOM_MODULES} ]]; then - einfo "Adding user-specified extra modules: '${PROFTP_CUSTOM_MODULES}'" - m="${m}:${PROFTP_CUSTOM_MODULES}" - fi - - [[ -z ${m} ]] || c="${c} --with-modules=${m:1}" - - econf --localstatedir=/run/proftpd --sysconfdir=/etc/proftpd --disable-strip \ - $(use_enable acl facl) \ - $(use_enable authfile auth-file) \ - $(use_enable caps cap) \ - $(use_enable ctrls) \ - $(use_enable dso) \ - $(use_enable ident) \ - $(use_enable ipv6) \ - $(use_enable memcache) \ - $(use_enable ncurses) \ - $(use_enable nls) \ - $(use_enable ssl openssl) \ - $(use_enable pam auth-pam) \ - $(use_enable pcre) \ - $(use_enable sodium) \ - $(use_enable test tests) \ - --enable-trace \ - --enable-shadow \ - --enable-autoshadow \ - ${c:1} -} - -src_test() { - emake api-tests -C tests -} - -src_install() { - default - [[ -z ${LINGUAS-set} ]] && rm -r "${ED}"/usr/share/locale - rm -rf "${ED}"/run "${ED}"/var/run - - newinitd "${FILESDIR}"/proftpd.initd-r1 proftpd - insinto /etc/proftpd - doins "${FILESDIR}"/proftpd.conf.sample - - insinto /etc/xinetd.d - newins "${FILESDIR}"/proftpd.xinetd proftpd - - insinto /etc/logrotate.d - newins "${FILESDIR}"/${PN}.logrotate ${PN} - - dodoc ChangeLog CREDITS INSTALL NEWS README* RELEASE_NOTES - - docinto html - dodoc doc/*.html doc/contrib/*.html doc/howto/*.html doc/modules/*.html - - docinto rfc - dodoc doc/rfc/*.txt - - systemd_dounit "${FILESDIR}"/${PN}.service - newtmpfiles "${FILESDIR}"/${PN}-tmpfiles.d.conf-r1 ${PN}.conf -} - -pkg_postinst() { - # Create /var/run files at package merge time: bug #650000 - tmpfiles_process ${PN}.conf -} diff --git a/net-ftp/pure-ftpd/Manifest b/net-ftp/pure-ftpd/Manifest index 74e67151882b..8319ba3390ec 100644 --- a/net-ftp/pure-ftpd/Manifest +++ b/net-ftp/pure-ftpd/Manifest @@ -8,7 +8,7 @@ AUX pure-ftpd.rc11 2018 BLAKE2B 1783228b5179b6d11fd6b06bc722e15f6f81e6c8443dd516 AUX pure-ftpd.xinetd 247 BLAKE2B aa2b0f8b4b6ff45e9b8dd632af5ff680ddd5abe51647dda91ca78bf3cb9ba9a090b20433f460213e95b8e57958d711f4bd7fa594b3d33fae818b853ec5aaee5d SHA512 e8ac0527daf1e182e7514d17f04bd20e789231e627cc7228ac23a241a4c420204a61ef9438c57e63f402eb3608ae0acc15a72fe484c99bb4e172bbd5ece2b72d DIST pure-ftpd-1.0.49.tar.bz2 487958 BLAKE2B bd5f10a49b533eb6c257032659e97aa7ae16ec9402704d8ee06c92938e217b748b390ccf0e31b3640f41cb7a93f85b29c8ddcdc296f214391b1d92da9d701a7c SHA512 b44896d6fe2cda9169b1db93c5260bb892af14a173f2d25e60dd6530afe85d8e9156985609e35da7e5550dc123afb42bc5012beb9fca9011054cf0ed8b2eddef DIST pure-ftpd-1.0.50.tar.bz2 520167 BLAKE2B 0c694ed48e896be13d907a71a24357f8676daf2c66bdaac41d31b162741164fe5ab1560499acc08b11e4fdb2a678c81c81c03e65a8181fcfd960ffbfe4b731d4 SHA512 8fbd24fb0450b9ed8e47335c97c3bc1cbcd0ee2ac7ebea95721b9dbddb7f61d8bedaa1710ba94213d96c79e12ec9b2b555ddb5f494c8961ca2339b176a52fe12 -EBUILD pure-ftpd-1.0.49-r5.ebuild 4391 BLAKE2B cdad0056b5e568fe0856b534b43d06519f3ab0b21ff1448eef8c6f24312d4588b1118c63c85256cbfd9890add9d3517a8909e2340db649fb66e4dbe40c919dc7 SHA512 0b5d673ddd4f41a46cc371130658037029c51378e35b602295f3ce1f09f22c2d526ea570d792b4b8f50ca82b5ccffb0b46e8472453a0db603ad683ec9a04924f -EBUILD pure-ftpd-1.0.50.ebuild 4105 BLAKE2B a01f721e6b2b5911b49536f980e12ecd8b0d9a9671c9abeba91ebebfd5e434b12436f4d5c38f3892332d2e7678ed74e0add06e0fb2e31318c8fd78f079d2df01 SHA512 4019d0e2b4cf0937cbbb6a5cc8c38ef16029757e53ffdc9dbf1db82c94f0717713131c6b2bbc2b9ca28ccc1e9c8c68fd8dc45c75db80c354bbb09a76500592e5 -EBUILD pure-ftpd-9999.ebuild 4105 BLAKE2B a01f721e6b2b5911b49536f980e12ecd8b0d9a9671c9abeba91ebebfd5e434b12436f4d5c38f3892332d2e7678ed74e0add06e0fb2e31318c8fd78f079d2df01 SHA512 4019d0e2b4cf0937cbbb6a5cc8c38ef16029757e53ffdc9dbf1db82c94f0717713131c6b2bbc2b9ca28ccc1e9c8c68fd8dc45c75db80c354bbb09a76500592e5 +EBUILD pure-ftpd-1.0.49-r6.ebuild 4393 BLAKE2B 9faa4fd08707b498fdf813545ccabff8a693d4ec349c095c97176196adec89e65dda12adc7822a43887cd944bdb622b624525691cbbfdfcb3ed9770deedc0bbc SHA512 7140052d7d1a0e2c62740296a20c18ad5c0721e9d8274978de824b458ffb318499d3ba3db780dd54137c40dc053d7744f58495038fc4f9978eaccd4460cb1b31 +EBUILD pure-ftpd-1.0.50-r1.ebuild 4107 BLAKE2B e1eba63ae010ae137848d110366de1d30f0b39d3257fcdba06db6c7029caf36bfdfbdd48f4ace82965c83bae2d57b5e066a4ac2b2bca22d4a29ed18d33d510d8 SHA512 0d2a677fb96bed769a01d170f93cdc7ce02ec625481d5a82f331810cb492e6e095ab608610136ead40af9d772bba6e56cf29f114555437b7170aed527c9f27b9 +EBUILD pure-ftpd-9999.ebuild 4107 BLAKE2B e1eba63ae010ae137848d110366de1d30f0b39d3257fcdba06db6c7029caf36bfdfbdd48f4ace82965c83bae2d57b5e066a4ac2b2bca22d4a29ed18d33d510d8 SHA512 0d2a677fb96bed769a01d170f93cdc7ce02ec625481d5a82f331810cb492e6e095ab608610136ead40af9d772bba6e56cf29f114555437b7170aed527c9f27b9 MISC metadata.xml 1177 BLAKE2B 7662da71f87d60d342e0a304c73c02f95a1006a0e6614c40ee3f3333a01430cb0a50ebd7e190569fcac25f9cefdd48fef68649c97006846977a2596333d78c34 SHA512 6c79218bba944381fbf0bfc86e27adde1e95e5e2ac5e7e2c5d637820f8fb4bb1bbd5e91a53f6fbc4ef641d03be6490e1d137895176576f7e2da798662590fb0a diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.49-r5.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.49-r5.ebuild deleted file mode 100644 index a502b2414044..000000000000 --- a/net-ftp/pure-ftpd/pure-ftpd-1.0.49-r5.ebuild +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools flag-o-matic - -DESCRIPTION="Fast, production-quality, standard-conformant FTP server" -HOMEPAGE="http://www.pureftpd.org/" -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" - 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:= - virtual/libcrypt:= - caps? ( sys-libs/libcap ) - ldap? ( >=net-nds/openldap-2.0.25 ) - mysql? ( || ( - 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(-)] - ) - sysquota? ( sys-fs/quota[-rpc] ) - xinetd? ( virtual/inetd )" - -RDEPEND="${DEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -PATCHES=( - "${FILESDIR}/${PN}-1.0.28-pam.patch" - - # https://bugs.gentoo.org/711124 - "${FILESDIR}/${P}-diraliases_uninitialized_pointer.patch" - "${FILESDIR}/${P}-pure_strcmp_OOB_read.patch" - - # https://bugs.gentoo.org/721242 - "${FILESDIR}/${P}-do-not-call-ar-directly.patch" - - # https://bugs.gentoo.org/811786 - "${FILESDIR}/${P}-quota_maxfile_size_check.patch" -) - -src_prepare() { - default - 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 - - # Do not auto-use SSP -- let the user select this. - export ax_cv_check_cflags___fstack_protector_all=no - - local myeconfargs=( - --enable-largefile - # Required for correct pid file location. - # 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}"/ - --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 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 ChangeLog FAQ HISTORY 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 - fi -} diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.49-r6.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.49-r6.ebuild new file mode 100644 index 000000000000..d54809d44fa9 --- /dev/null +++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.49-r6.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic + +DESCRIPTION="Fast, production-quality, standard-conformant FTP server" +HOMEPAGE="http://www.pureftpd.org/" +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" + 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:= + virtual/libcrypt:= + caps? ( sys-libs/libcap ) + ldap? ( >=net-nds/openldap-2.0.25:= ) + mysql? ( || ( + 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(-)] + ) + sysquota? ( sys-fs/quota[-rpc] ) + xinetd? ( virtual/inetd )" + +RDEPEND="${DEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +PATCHES=( + "${FILESDIR}/${PN}-1.0.28-pam.patch" + + # https://bugs.gentoo.org/711124 + "${FILESDIR}/${P}-diraliases_uninitialized_pointer.patch" + "${FILESDIR}/${P}-pure_strcmp_OOB_read.patch" + + # https://bugs.gentoo.org/721242 + "${FILESDIR}/${P}-do-not-call-ar-directly.patch" + + # https://bugs.gentoo.org/811786 + "${FILESDIR}/${P}-quota_maxfile_size_check.patch" +) + +src_prepare() { + default + 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 + + # Do not auto-use SSP -- let the user select this. + export ax_cv_check_cflags___fstack_protector_all=no + + local myeconfargs=( + --enable-largefile + # Required for correct pid file location. + # 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}"/ + --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 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 ChangeLog FAQ HISTORY 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 + fi +} diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.50-r1.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.50-r1.ebuild new file mode 100644 index 000000000000..4be40c54c4ef --- /dev/null +++ b/net-ftp/pure-ftpd/pure-ftpd-1.0.50-r1.ebuild @@ -0,0 +1,150 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic + +DESCRIPTION="Fast, production-quality, standard-conformant FTP server" +HOMEPAGE="http://www.pureftpd.org/" +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" + 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:= + virtual/libcrypt:= + caps? ( sys-libs/libcap ) + ldap? ( >=net-nds/openldap-2.0.25:= ) + mysql? ( || ( + 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(-)] + ) + sysquota? ( sys-fs/quota[-rpc] ) + xinetd? ( virtual/inetd )" + +RDEPEND="${DEPEND} + net-ftp/ftpbase + selinux? ( sec-policy/selinux-ftp )" + +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 + + # Do not auto-use SSP -- let the user select this. + export ax_cv_check_cflags___fstack_protector_all=no + + local myeconfargs=( + --enable-largefile + # Required for correct pid file location. + # 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}"/ + --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 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 ChangeLog FAQ HISTORY 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 + fi +} diff --git a/net-ftp/pure-ftpd/pure-ftpd-1.0.50.ebuild b/net-ftp/pure-ftpd/pure-ftpd-1.0.50.ebuild deleted file mode 100644 index 1127842978af..000000000000 --- a/net-ftp/pure-ftpd/pure-ftpd-1.0.50.ebuild +++ /dev/null @@ -1,150 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic - -DESCRIPTION="Fast, production-quality, standard-conformant FTP server" -HOMEPAGE="http://www.pureftpd.org/" -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" - 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:= - virtual/libcrypt:= - caps? ( sys-libs/libcap ) - ldap? ( >=net-nds/openldap-2.0.25 ) - mysql? ( || ( - 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(-)] - ) - sysquota? ( sys-fs/quota[-rpc] ) - xinetd? ( virtual/inetd )" - -RDEPEND="${DEPEND} - net-ftp/ftpbase - selinux? ( sec-policy/selinux-ftp )" - -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 - - # Do not auto-use SSP -- let the user select this. - export ax_cv_check_cflags___fstack_protector_all=no - - local myeconfargs=( - --enable-largefile - # Required for correct pid file location. - # 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}"/ - --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 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 ChangeLog FAQ HISTORY 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 - fi -} diff --git a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild b/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild index 1127842978af..4be40c54c4ef 100644 --- a/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild +++ b/net-ftp/pure-ftpd/pure-ftpd-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -28,7 +28,7 @@ BDEPEND="sys-devel/autoconf-archive" DEPEND="dev-libs/libsodium:= virtual/libcrypt:= caps? ( sys-libs/libcap ) - ldap? ( >=net-nds/openldap-2.0.25 ) + ldap? ( >=net-nds/openldap-2.0.25:= ) mysql? ( || ( dev-db/mariadb-connector-c dev-db/mysql-connector-c -- cgit v1.2.3