mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
net-ftp/proftpd: drop 1.3.8b-r1, 1.3.9-r1, 1.3.9-r2
Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr> Part-of: https://codeberg.org/gentoo/gentoo/pulls/796 Merges: https://codeberg.org/gentoo/gentoo/pulls/796 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
committed by
Sam James
parent
b81b983532
commit
d58046a883
@@ -3,13 +3,7 @@ DIST mod_diskuse-0.9.1.tar.gz 72314 BLAKE2B e80d196cd1d7ca2defed7baf9bc2d31ac85b
|
||||
DIST mod_gss-1.3.9.tar.gz 117158 BLAKE2B f957fa465f9a9b06ceb9c190ab60c7f67fdeeef79dce7f51bcfed8dc726cb01a231232c65821ca3a240b77a5019fa22f31b45496c128a06627bd24dc960b566f SHA512 44615983b0f67939b110e54c4a83b3056263bad72ba78de1b16f9f8590f5504c60e679f55484708d49e694c528d4715d9abd0cb75cfe439982ea9e02e0c18891
|
||||
DIST mod_msg-0.5.1.tar.gz 9689 BLAKE2B fc0cbcfa341c6339be4b064db9ea8860da91c22eeee91c77fd03581e49ebbce3fcd3a27a17da85d782286c6d329e12e7237ee7cbfb70ecc1d4d32bb21f0f74e2 SHA512 729261b151a98bc971c825e88131026725aa4f4fc161adc162af8c4c3c8a457bd981308aea20fe6a1b8711b26c63a17b8d40434ef00bc45504a7c9c2a9cbe4bf
|
||||
DIST mod_vroot-0.9.12.tar.gz 112717 BLAKE2B 60a59539ff9db190432a807f88236e37ab42aea0510903586ff19a00ba9d2e118b58460bdef271f6de8f2b022411484d5fe6610d66552948a9ff459ddda45343 SHA512 a84c14b9d05c4890abe50c86f832c91fa4d0971bc2b1866a3a34d73ff85acd1e902fc0cae739e22ea46e530c73230fb005ea9edeb68fd6cfb963e0c5ca9655ec
|
||||
DIST mod_vroot-0.9.4.tar.gz 29461 BLAKE2B eb4d3f6425ab0a1a61ca607e4655b5f8ff6ea342ca49d49598e7a4c5596382aa2c1d4e8228a1cdcfff324feb92dac80fcc58e35bbb77155069749afdd7cc41fb SHA512 f5de392c9fe39f0a03b0783a7092bbfe17ea6db991f4b4e4a2d8f092f073d27ef2c64dd6484d5665b5abc808c0caba016d4fc3fab3da3810f5ebe5249bb4cbce
|
||||
DIST proftpd-1.3.8b.tar.gz 19752808 BLAKE2B 3e8fdf5e0a27dd2284514a446496715e90c15d7be17824cceb4159e930d64705680320b33769f68ab6f3ce152322363aca6301190eea234de0bf4bb0cc6557e1 SHA512 291a91f220d711fefdbff18ef4e056080ad99c94dc4c71d0651f725932e1f2d9438fb75fbc2017e0f30a9a18a354b2d515788fbd538a80414f8c2d4eaaace396
|
||||
DIST proftpd-1.3.9.tar.gz 19837398 BLAKE2B 30ad60148de79cd4198791ce89dc6c2204c75cb0966f7f17a0fefe25bf4678dd8ea7d373469fbf02f670ae0ca6879f4371ef97a65f4875ad131930d49d800b6f SHA512 5cc53d7909f8b45718509b547aeffaf027cec66b1c34ed9f3a7de1ba561f9ca3d51bb991edb24c8f833bb47e0131619850a4bfd4fec509505769d123e78dc8b3
|
||||
DIST proftpd-1.3.9.tar.gz.asc 195 BLAKE2B 521cf7ce628e73e1f25f6673f0c1ae9a17b29990c1c7f04193ba904f401ff30fc19472cc9e41069c537844bc32dae813f8397660a67f37d71e26fd15e2229b25 SHA512 4633b34400e3499d406a0f774904727b9b8fdebf4c6628c164820e3375f3bf7a66bcd88460ffab4e61e54d25d1c28aae676385cf279e2fab90714a819e2727ae
|
||||
DIST proftpd-1.3.9a.tar.gz 19850748 BLAKE2B f024e1f112f326ebe11d1d478af258e43e4d506a01a025b6f6fa4096a19ac44f1913154489c9cd203e906ac9091806e2f2b3869c0db6b094fb960b6e6d3b4092 SHA512 217780522a9366dd16c678ab4ca3de8a6079482a0d68d2f0ab7869d0f8aba4982d0cb0105821f52c8d2fca6f76b3156da70bdbb7d01ac96ad5c16f99f33fdd76
|
||||
DIST proftpd-1.3.9a.tar.gz.asc 195 BLAKE2B 8b3f7f2fe2cc906d2804247de0b33ace669f6e0d43a99de592aaf82358c322bd42db95c23ae9bb8096702916bc42e639b6a9e8a99f7a1652731889f5a8cb5927 SHA512 6c8c872dea409745b89c5e225a421c67c3f655629d4432d03e7a55c9d4ee7921e43e8cc982743a1b32b5f3ee5e2b04467ea01237005e95cdd7add18749a9c2e4
|
||||
DIST proftpd-mod-case-0.7.tar.gz 13184 BLAKE2B bf2118d9b8ed97a5b192b92b515d17ac7a0d75e154288e5afb3a1c3d686e635093df9501cc1c9b077f87c14326e31e8b9f751803dfca1eae9643f12333eb633f SHA512 c08d13ef82fec36ae75aa3213dd02e0ce4045904849f422e152f039a9da66a45e4423751074b8bcf8ce347a40ce0e7bde798a85cbadc962fd872aeaa898261fc
|
||||
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
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
diff --git a/mod_msg.c b/mod_msg.c
|
||||
index 70bce69..4ce6bd7 100644
|
||||
--- a/mod_msg.c
|
||||
+++ b/mod_msg.c
|
||||
@@ -52,10 +52,14 @@ extern pid_t mpid;
|
||||
|
||||
module msg_module;
|
||||
|
||||
-#ifndef USE_CTRLS
|
||||
+#ifndef PR_USE_CTRLS
|
||||
# error "mod_msg requires Controls support (--enable-ctrls)"
|
||||
#endif /* USE_CTRLS */
|
||||
|
||||
+#define pr_scoreboard_read_entry pr_scoreboard_entry_read
|
||||
+#define DECLINED PR_DECLINED
|
||||
+#define HANDLED PR_HANDLED
|
||||
+
|
||||
static ctrls_acttab_t msg_acttab[];
|
||||
|
||||
static int msg_engine = FALSE;
|
||||
@@ -709,7 +713,7 @@ static int msg_handle_msg(pr_ctrls_t *ctrl, int reqargc, char **reqargv) {
|
||||
if (msg_send_msg(score->sce_pid, msgstr) < 0) {
|
||||
msg_errno = errno;
|
||||
(void) pr_log_writefile(msg_logfd, MOD_MSG_VERSION,
|
||||
- "error sending message to all (pid %u): %s", reqargv[1],
|
||||
+ "error sending message to all (pid %u): %s",
|
||||
score->sce_pid, strerror(errno));
|
||||
|
||||
} else
|
||||
@@ -1,23 +0,0 @@
|
||||
diff --git a/mod_vroot.c b/mod_vroot.c
|
||||
index b0ce59a..db0df35 100644
|
||||
--- a/mod_vroot.c
|
||||
+++ b/mod_vroot.c
|
||||
@@ -1515,7 +1515,7 @@ MODRET set_vrootserverroot(cmd_rec *cmd) {
|
||||
*/
|
||||
|
||||
pathlen = strlen(cmd->argv[1]);
|
||||
- if (cmd->argv[1][pathlen - 1] != '/') {
|
||||
+ if (((char*)cmd->argv[1])[pathlen - 1] != '/') {
|
||||
c->argv[0] = pstrcat(c->pool, cmd->argv[1], "/", NULL);
|
||||
|
||||
} else {
|
||||
@@ -1648,7 +1648,9 @@ MODRET vroot_pre_pass(cmd_rec *cmd) {
|
||||
fs->rename = vroot_rename;
|
||||
fs->unlink = vroot_unlink;
|
||||
fs->open = vroot_open;
|
||||
+#if ! PROFTPD_VERSION_NUMBER >= 0x0001030604
|
||||
fs->creat = vroot_creat;
|
||||
+#endif /* before ProFTPD 1.3.6_rc4 */
|
||||
fs->link = vroot_link;
|
||||
fs->readlink = vroot_readlink;
|
||||
fs->symlink = vroot_symlink;
|
||||
@@ -1,255 +0,0 @@
|
||||
https://bugs.gentoo.org/881709 (and dupe https://bugs.gentoo.org/900066)
|
||||
https://github.com/proftpd/proftpd/pull/1667
|
||||
|
||||
From 98e46de3093da71121362d5be4c445a3ef227010 Mon Sep 17 00:00:00 2001
|
||||
From: Arjun Shankar <arjun@redhat.com>
|
||||
Date: Fri, 5 May 2023 15:35:56 +0200
|
||||
Subject: [PATCH] configure: Remove several implicit function declarations
|
||||
|
||||
During configure, some checks omit the corresponding include. A compiler
|
||||
defaulting to C99 mode could cause those checks to fail since C99 does
|
||||
not allow implicit function declarations. This commit fixes the same.
|
||||
The configure script is re-generated.
|
||||
|
||||
Signed-off-by: Arjun Shankar <arjun@redhat.com>
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -18305,6 +18305,20 @@ _ACEOF
|
||||
fi
|
||||
|
||||
|
||||
+for ac_header in stddef.h crypt.h netdb.h arpa/inet.h sys/socket.h
|
||||
+do :
|
||||
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
|
||||
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
|
||||
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
|
||||
+ cat >>confdefs.h <<_ACEOF
|
||||
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
|
||||
+_ACEOF
|
||||
+
|
||||
+fi
|
||||
+
|
||||
+done
|
||||
+
|
||||
+
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for standalone crypt" >&5
|
||||
$as_echo_n "checking for standalone crypt... " >&6; }
|
||||
if ${pr_cv_lib_standalone_crypt+:} false; then :
|
||||
@@ -18313,10 +18327,19 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_CRYPT_H
|
||||
+ # include <crypt.h>
|
||||
+ #endif
|
||||
+
|
||||
int
|
||||
main ()
|
||||
{
|
||||
-crypt();
|
||||
+
|
||||
+ crypt(NULL, NULL);
|
||||
+
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
@@ -18388,10 +18411,19 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_NETDB_H
|
||||
+ # include <netdb.h>
|
||||
+ #endif
|
||||
+
|
||||
int
|
||||
main ()
|
||||
{
|
||||
-gethostbyname();
|
||||
+
|
||||
+ gethostbyname(NULL);
|
||||
+
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
@@ -18508,10 +18540,19 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_ARPA_INET_H
|
||||
+ # include <arpa/inet.h>
|
||||
+ #endif
|
||||
+
|
||||
int
|
||||
main ()
|
||||
{
|
||||
-inet_aton();
|
||||
+
|
||||
+ inet_aton(NULL, NULL);
|
||||
+
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
@@ -18584,10 +18625,16 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
+ #if HAVE_NETDB_H
|
||||
+ # include <netdb.h>
|
||||
+ #endif
|
||||
+
|
||||
int
|
||||
main ()
|
||||
{
|
||||
-gethostent();
|
||||
+
|
||||
+ gethostent();
|
||||
+
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
@@ -18659,10 +18706,19 @@ else
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_SYS_SOCKET_H
|
||||
+ # include <sys/socket.h>
|
||||
+ #endif
|
||||
+
|
||||
int
|
||||
main ()
|
||||
{
|
||||
-bind();
|
||||
+
|
||||
+ bind(0, NULL, 0);
|
||||
+
|
||||
;
|
||||
return 0;
|
||||
}
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -1476,18 +1476,42 @@ AC_ARG_ENABLE(transfer-buffer-size,
|
||||
])
|
||||
|
||||
dnl Checks for libraries. Yes, this is the hard way, but it's necessary.
|
||||
+AC_CHECK_HEADERS(stddef.h crypt.h netdb.h arpa/inet.h sys/socket.h)
|
||||
+
|
||||
AC_CACHE_CHECK(for standalone crypt,pr_cv_lib_standalone_crypt,
|
||||
- AC_TRY_LINK(,[crypt();],
|
||||
- pr_cv_lib_standalone_crypt="yes", pr_cv_lib_standalone_crypt="no" ))
|
||||
+ AC_TRY_LINK(
|
||||
+ [
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_CRYPT_H
|
||||
+ # include <crypt.h>
|
||||
+ #endif
|
||||
+ ],
|
||||
+ [
|
||||
+ crypt(NULL, NULL);
|
||||
+ ],
|
||||
+ pr_cv_lib_standalone_crypt="yes", pr_cv_lib_standalone_crypt="no" ))
|
||||
|
||||
if test "$pr_cv_lib_standalone_crypt" = "no"; then
|
||||
AC_CHECK_LIB(crypt, crypt)
|
||||
fi
|
||||
|
||||
AC_CACHE_CHECK(for standalone gethostbyname,pr_cv_lib_standalone_gethost,
|
||||
- AC_TRY_LINK(,[gethostbyname();],
|
||||
- pr_cv_lib_standalone_gethost="yes",
|
||||
- pr_cv_lib_standalone_gethost="no" ))
|
||||
+ AC_TRY_LINK(
|
||||
+ [
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_NETDB_H
|
||||
+ # include <netdb.h>
|
||||
+ #endif
|
||||
+ ],
|
||||
+ [
|
||||
+ gethostbyname(NULL);
|
||||
+ ],
|
||||
+ pr_cv_lib_standalone_gethost="yes",
|
||||
+ pr_cv_lib_standalone_gethost="no" ))
|
||||
|
||||
if test "$pr_cv_lib_standalone_gethost" = "no"; then
|
||||
AC_CHECK_LIB(resolv, gethostbyname)
|
||||
@@ -1495,25 +1519,57 @@ if test "$pr_cv_lib_standalone_gethost" = "no"; then
|
||||
fi
|
||||
|
||||
AC_CACHE_CHECK(for standalone inet_aton,pr_cv_lib_standalone_aton,
|
||||
- AC_TRY_LINK(,[inet_aton();],
|
||||
- pr_cv_lib_standalone_aton="yes",
|
||||
- pr_cv_lib_standalone_aton="no" ))
|
||||
+ AC_TRY_LINK(
|
||||
+ [
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_ARPA_INET_H
|
||||
+ # include <arpa/inet.h>
|
||||
+ #endif
|
||||
+ ],
|
||||
+ [
|
||||
+ inet_aton(NULL, NULL);
|
||||
+ ],
|
||||
+ pr_cv_lib_standalone_aton="yes",
|
||||
+ pr_cv_lib_standalone_aton="no" ))
|
||||
|
||||
if test "$pr_cv_lib_standalone_aton" = "no"; then
|
||||
AC_CHECK_LIB(bind, inet_aton)
|
||||
fi
|
||||
|
||||
AC_CACHE_CHECK(for standalone nsl functions,pr_cv_lib_standalone_nsl,[
|
||||
- AC_TRY_LINK(,[gethostent();],
|
||||
- pr_cv_lib_standalone_nsl="yes", pr_cv_lib_standalone_nsl="no") ])
|
||||
+ AC_TRY_LINK(
|
||||
+ [
|
||||
+ #if HAVE_NETDB_H
|
||||
+ # include <netdb.h>
|
||||
+ #endif
|
||||
+ ],
|
||||
+ [
|
||||
+ gethostent();
|
||||
+ ],
|
||||
+ pr_cv_lib_standalone_nsl="yes",
|
||||
+ pr_cv_lib_standalone_nsl="no") ])
|
||||
|
||||
if test "$pr_cv_lib_standalone_nsl" = "no"; then
|
||||
AC_CHECK_LIB(nsl, gethostent)
|
||||
fi
|
||||
|
||||
AC_CACHE_CHECK(for standalone socket functions,pr_cv_lib_standalone_sockets,
|
||||
- AC_TRY_LINK(,[bind();],
|
||||
- pr_cv_lib_standalone_sockets="yes", pr_cv_lib_standalone_sockets="no"))
|
||||
+ AC_TRY_LINK(
|
||||
+ [
|
||||
+ #if HAVE_STDDEF_H
|
||||
+ # include <stddef.h>
|
||||
+ #endif
|
||||
+ #if HAVE_SYS_SOCKET_H
|
||||
+ # include <sys/socket.h>
|
||||
+ #endif
|
||||
+ ],
|
||||
+ [
|
||||
+ bind(0, NULL, 0);
|
||||
+ ],
|
||||
+ pr_cv_lib_standalone_sockets="yes",
|
||||
+ pr_cv_lib_standalone_sockets="no"))
|
||||
|
||||
if test "$pr_cv_lib_standalone_sockets" = "no"; then
|
||||
AC_CHECK_LIB(socket, bind)
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
https://github.com/proftpd/proftpd/pull/1754
|
||||
|
||||
From 020192499202f268e6d96339597921aec01ec737 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 8 Dec 2023 19:58:51 +0100
|
||||
Subject: [PATCH] configure: Use char ** for the iconv input argument
|
||||
|
||||
The standard iconv function uses char ** even for the input buffer.
|
||||
Using the incompatible const char ** type causes the check to fail if
|
||||
the compiler treats such type errors as errors, instead of merely
|
||||
warning about it.
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -21475,7 +21475,7 @@ main ()
|
||||
{
|
||||
|
||||
size_t res, in_len = 0, out_len = 0;
|
||||
- const char *in = NULL;
|
||||
+ char *in = NULL;
|
||||
char *out = NULL;
|
||||
res = iconv((iconv_t)-1, &in, &in_len, &out, &out_len);
|
||||
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -2100,7 +2100,7 @@ AC_TRY_LINK(
|
||||
],
|
||||
[
|
||||
size_t res, in_len = 0, out_len = 0;
|
||||
- const char *in = NULL;
|
||||
+ char *in = NULL;
|
||||
char *out = NULL;
|
||||
res = iconv((iconv_t)-1, &in, &in_len, &out, &out_len);
|
||||
],
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
d /var/run/proftpd 0755 root root
|
||||
@@ -1,51 +0,0 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
extra_started_commands="reload"
|
||||
|
||||
depend() {
|
||||
need net
|
||||
use logger dns mysql postgresql antivirus
|
||||
}
|
||||
|
||||
check_configuration() {
|
||||
if [ ! -e /etc/proftpd/proftpd.conf ] ; then
|
||||
eerror "To execute the ProFTPD server you need a /etc/proftpd/proftpd.conf configuration"
|
||||
eerror "file. In /etc/proftpd you can find a sample configuration."
|
||||
return 1
|
||||
fi
|
||||
/usr/sbin/proftpd -t &>/dev/null
|
||||
if [ $? -ne 0 ] ; then
|
||||
eerror "The ProFTPD configuration file /etc/proftpd/proftpd.conf is invalid! You have to"
|
||||
eerror "fix your configuration in order to run the ProFTPD server. For more information"
|
||||
eerror "you may execute the ProFTPD configuration check '/usr/sbin/proftpd -t'."
|
||||
return 2
|
||||
fi
|
||||
}
|
||||
|
||||
start() {
|
||||
checkpath -d /var/run/proftpd
|
||||
[ "${RC_CMD}" = "restart" ] || check_configuration || return 1
|
||||
ebegin "Starting ProFTPD"
|
||||
start-stop-daemon --start --quiet \
|
||||
--exec /usr/sbin/proftpd \
|
||||
--pidfile /var/run/proftpd/proftpd.pid
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
[ "${RC_CMD}" != "restart" ] || check_configuration || return 1
|
||||
ebegin "Stopping ProFTPD"
|
||||
start-stop-daemon --stop --quiet --retry 20 \
|
||||
--pidfile /var/run/proftpd/proftpd.pid
|
||||
eend $?
|
||||
}
|
||||
|
||||
reload() {
|
||||
check_configuration || return 1
|
||||
ebegin "Reloading ProFTPD"
|
||||
start-stop-daemon --quiet --signal HUP \
|
||||
--pidfile /var/run/proftpd/proftpd.pid
|
||||
eend $?
|
||||
}
|
||||
@@ -1,305 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
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? ( https://downloads.sourceforge.net/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 )
|
||||
"
|
||||
S="${WORKDIR}/${P/_/}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~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"
|
||||
# Some tests are ran in chroot. Confuses sandbox.
|
||||
RESTRICT="test"
|
||||
# TODO: geoip
|
||||
REQUIRED_USE="
|
||||
ban? ( ctrls )
|
||||
msg? ( ctrls )
|
||||
sftp? ( ssl )
|
||||
shaper? ( ctrls )
|
||||
|
||||
mysql? ( ssl )
|
||||
postgres? ( ssl )
|
||||
sqlite? ( ssl )
|
||||
"
|
||||
|
||||
COMMON_DEPEND="
|
||||
virtual/libcrypt:=
|
||||
net-dns/libidn:0=
|
||||
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="
|
||||
${COMMON_DEPEND}
|
||||
test? ( dev-libs/check )
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
net-ftp/ftpbase
|
||||
selinux? ( sec-policy/selinux-ftp )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.3.6-use-trace.patch
|
||||
"${FILESDIR}"/${PN}-1.3.8-configure-clang16.patch
|
||||
"${FILESDIR}"/${PN}-1.3.8a-configure-c99.patch
|
||||
)
|
||||
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
# AIX only
|
||||
authenticate
|
||||
loginfailed
|
||||
loginsuccess
|
||||
|
||||
# Deprecated/removed functions, not actually checking for this anyway
|
||||
SSLeay_add_all_algorithms
|
||||
# Test isn't actually checking for BIO_f_zlib
|
||||
BIO_f_zlib
|
||||
)
|
||||
|
||||
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}"
|
||||
|
||||
local myeconfargs=(
|
||||
--cache-file="${S}"/config.cache
|
||||
--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}
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,302 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit systemd tmpfiles toolchain-funcs
|
||||
|
||||
MOD_CASE="0.9.1"
|
||||
MOD_CLAMAV="0.14rc2"
|
||||
MOD_DISKUSE="0.9.1"
|
||||
MOD_GSS="1.3.9"
|
||||
MOD_MSG="0.5.1"
|
||||
MOD_VROOT="0.9.12"
|
||||
|
||||
DESCRIPTION="An advanced and very configurable FTP server"
|
||||
HOMEPAGE="
|
||||
http://www.proftpd.org/
|
||||
http://www.castaglia.org/proftpd/
|
||||
https://github.com/jbenden/mod_clamav
|
||||
https://gssmod.sourceforge.net/
|
||||
"
|
||||
SRC_URI="
|
||||
ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz
|
||||
case? ( https://github.com/Castaglia/${PN}-mod_case/archive/v${MOD_CASE}.tar.gz -> 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? ( https://github.com/Castaglia/${PN}-mod_diskuse/archive/v${MOD_DISKUSE}.tar.gz -> mod_diskuse-${MOD_DISKUSE}.tar.gz )
|
||||
kerberos? ( https://downloads.sourceforge.net/gssmod/mod_gss-${MOD_GSS}.tar.gz )
|
||||
msg? ( https://github.com/Castaglia/${PN}-mod_msg/archive/v${MOD_MSG}.tar.gz -> 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 )
|
||||
"
|
||||
S="${WORKDIR}/${P/_/}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
|
||||
IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident
|
||||
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"
|
||||
# Some tests are ran in chroot. Confuses sandbox.
|
||||
RESTRICT="test"
|
||||
# TODO: geoip
|
||||
REQUIRED_USE="
|
||||
ban? ( ctrls )
|
||||
msg? ( ctrls )
|
||||
sftp? ( ssl )
|
||||
shaper? ( ctrls )
|
||||
|
||||
mysql? ( ssl )
|
||||
postgres? ( ssl )
|
||||
sqlite? ( ssl )
|
||||
"
|
||||
|
||||
COMMON_DEPEND="
|
||||
virtual/libcrypt:=
|
||||
net-dns/libidn:0=
|
||||
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="
|
||||
${COMMON_DEPEND}
|
||||
test? ( dev-libs/check )
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
net-ftp/ftpbase
|
||||
selinux? ( sec-policy/selinux-ftp )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.3.6-use-trace.patch
|
||||
# https://bugs.gentoo.org/953968
|
||||
"${FILESDIR}"/${PN}-1.3.9-slibtool.patch
|
||||
)
|
||||
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
# AIX only
|
||||
authenticate
|
||||
loginfailed
|
||||
loginsuccess
|
||||
|
||||
# Deprecated/removed functions, not actually checking for this anyway
|
||||
SSLeay_add_all_algorithms
|
||||
# Test isn't actually checking for BIO_f_zlib
|
||||
BIO_f_zlib
|
||||
)
|
||||
|
||||
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}"/${PN}-mod_case-${MOD_CASE}/mod_case.c contrib || die
|
||||
cp -v "${WORKDIR}"/${PN}-mod_case-${MOD_CASE}/mod_case.html doc/contrib || die
|
||||
fi
|
||||
|
||||
if use clamav ; then
|
||||
in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-refresh-api.patch
|
||||
in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-debool.patch
|
||||
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 ${PN}-mod_diskuse-${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}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.h "${S}"/contrib || die
|
||||
|
||||
cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.c "${S}"/contrib || die
|
||||
cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.html "${S}"/doc/contrib || die
|
||||
fi
|
||||
|
||||
if use msg; then
|
||||
cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.c contrib || die
|
||||
cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.html doc/contrib || die
|
||||
fi
|
||||
|
||||
if use vroot; then
|
||||
cp -rv "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT} contrib/mod_vroot || die
|
||||
fi
|
||||
|
||||
if use kerberos ; then
|
||||
# in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch
|
||||
in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.9-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 ${PN}-mod_diskuse-${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}"
|
||||
|
||||
local myeconfargs=(
|
||||
--cache-file="${S}"/config.cache
|
||||
--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 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}
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,317 +0,0 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/proftpd.asc
|
||||
inherit systemd tmpfiles toolchain-funcs verify-sig
|
||||
|
||||
MOD_CASE="0.9.1"
|
||||
MOD_CLAMAV="0.14rc2"
|
||||
MOD_DISKUSE="0.9.1"
|
||||
MOD_GSS="1.3.9"
|
||||
MOD_MSG="0.5.1"
|
||||
MOD_VROOT="0.9.12"
|
||||
|
||||
DESCRIPTION="An advanced and very configurable FTP server"
|
||||
HOMEPAGE="
|
||||
http://www.proftpd.org/
|
||||
http://www.castaglia.org/proftpd/
|
||||
https://github.com/jbenden/mod_clamav
|
||||
https://gssmod.sourceforge.net/
|
||||
"
|
||||
SRC_URI="
|
||||
ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz
|
||||
case? ( https://github.com/Castaglia/${PN}-mod_case/archive/v${MOD_CASE}.tar.gz -> 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? ( https://github.com/Castaglia/${PN}-mod_diskuse/archive/v${MOD_DISKUSE}.tar.gz -> mod_diskuse-${MOD_DISKUSE}.tar.gz )
|
||||
kerberos? ( https://downloads.sourceforge.net/gssmod/mod_gss-${MOD_GSS}.tar.gz )
|
||||
msg? ( https://github.com/Castaglia/${PN}-mod_msg/archive/v${MOD_MSG}.tar.gz -> 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 )
|
||||
verify-sig? ( ftp://ftp.proftpd.org/distrib/source/${P/_/}.tar.gz.asc )
|
||||
"
|
||||
S="${WORKDIR}/${P/_/}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
|
||||
IUSE="acl authfile ban +caps case clamav copy ctrls deflate diskuse dso dynmasq exec ifsession ifversion ident
|
||||
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"
|
||||
# Some tests are ran in chroot. Confuses sandbox.
|
||||
RESTRICT="test"
|
||||
# TODO: geoip
|
||||
REQUIRED_USE="
|
||||
ban? ( ctrls )
|
||||
msg? ( ctrls )
|
||||
sftp? ( ssl )
|
||||
shaper? ( ctrls )
|
||||
|
||||
mysql? ( ssl )
|
||||
postgres? ( ssl )
|
||||
sqlite? ( ssl )
|
||||
"
|
||||
|
||||
COMMON_DEPEND="
|
||||
virtual/libcrypt:=
|
||||
net-dns/libidn:0=
|
||||
acl? ( virtual/acl )
|
||||
caps? ( sys-libs/libcap )
|
||||
clamav? ( app-antivirus/clamav )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
memcache? (
|
||||
|| (
|
||||
dev-libs/libmemcached-awesome
|
||||
>=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="
|
||||
${COMMON_DEPEND}
|
||||
test? ( dev-libs/check )
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
net-ftp/ftpbase
|
||||
selinux? ( sec-policy/selinux-ftp )
|
||||
"
|
||||
BDEPEND="
|
||||
verify-sig? ( sec-keys/openpgp-keys-proftpd )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.3.6-use-trace.patch
|
||||
# https://bugs.gentoo.org/953968
|
||||
"${FILESDIR}"/${PN}-1.3.9-slibtool.patch
|
||||
)
|
||||
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
# AIX only
|
||||
authenticate
|
||||
loginfailed
|
||||
loginsuccess
|
||||
|
||||
# Deprecated/removed functions, not actually checking for this anyway
|
||||
SSLeay_add_all_algorithms
|
||||
# Test isn't actually checking for BIO_f_zlib
|
||||
BIO_f_zlib
|
||||
)
|
||||
|
||||
in_dir() {
|
||||
pushd "${WORKDIR}/${1}" || die
|
||||
shift
|
||||
"$@"
|
||||
popd
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P/_/}.tar.gz{,.asc}
|
||||
default
|
||||
}
|
||||
|
||||
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}"/${PN}-mod_case-${MOD_CASE}/mod_case.c contrib || die
|
||||
cp -v "${WORKDIR}"/${PN}-mod_case-${MOD_CASE}/mod_case.html doc/contrib || die
|
||||
fi
|
||||
|
||||
if use clamav ; then
|
||||
in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-refresh-api.patch
|
||||
in_dir mod_clamav-${MOD_CLAMAV} eapply "${FILESDIR}"/"${PN}"-1.3.9-clamav-debool.patch
|
||||
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 ${PN}-mod_diskuse-${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}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.h "${S}"/contrib || die
|
||||
|
||||
cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.c "${S}"/contrib || die
|
||||
cp -v "${WORKDIR}"/${PN}-mod_diskuse-${MOD_DISKUSE}/mod_diskuse.html "${S}"/doc/contrib || die
|
||||
fi
|
||||
|
||||
if use msg; then
|
||||
cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.c contrib || die
|
||||
cp -v "${WORKDIR}"/${PN}-mod_msg-${MOD_MSG}/mod_msg.html doc/contrib || die
|
||||
fi
|
||||
|
||||
if use vroot; then
|
||||
cp -rv "${WORKDIR}"/${PN}-mod_vroot-${MOD_VROOT} contrib/mod_vroot || die
|
||||
fi
|
||||
|
||||
if use kerberos ; then
|
||||
# in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.6_rc4-gss-refresh-api.patch
|
||||
in_dir mod_gss-${MOD_GSS} eapply "${FILESDIR}"/${PN}-1.3.9-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 ${PN}-mod_diskuse-${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}"
|
||||
|
||||
local myeconfargs=(
|
||||
--cache-file="${S}"/config.cache
|
||||
--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 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}
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
Reference in New Issue
Block a user