pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/net/pure-ftpd pure-ftpd: Update to 1.0.49



details:   https://anonhg.NetBSD.org/pkgsrc/rev/2702cd810144
branches:  trunk
changeset: 424440:2702cd810144
user:      nia <nia%pkgsrc.org@localhost>
date:      Wed Mar 11 11:47:19 2020 +0000

description:
pure-ftpd: Update to 1.0.49

* Version 1.0.49:
 - This version fixes a regression introduced in version 1.0.48 that broke
the external authentication feature. Reported by Peter Hudec, thanks!
 - Sockets from `pure-authd` and `pure-extauth` are now always owned by
`root` in order to cope with the absence of `CAP_DAC_OVERRIDE` on Linux.
Suggested by Arkadiusz Mi??kiewicz, thanks!

* Version 1.0.48:
 - SNI support has been added. A new service, `pure-certd`, can run
external code written in any language in order to map SNI names to TLS certificates.
 - External authentication handlers get a new
`AUTHD_CLIENT_SNI_NAME` environment variable set when the client uses SNI.
 - TLS certificates and keys can now be in different files.
 - `make install` does not overwrite existing configuration files any
more. The example files layout has changed.
 - TLS 1.3 is enabled when using OpenSSL 1.1.x.
 - TLS < 1.2 is disabled by default.
 - Quirks for obsolete OpenSSL versions have been removed.
 - Username _ftp can be used as an alternative to ftp everywhere.
 - Password hashing parameters are now chosen according to locally
available resources. The `pure-pw` command gets to new switches: `-C` (as
a hint regarding the number of simultaneous login attempts) and `-M`
(total memory, in MB, to reserve for password hashing).
 - New translation: Albanian, thanks to Moisi Xhaferaj.
 - The `PRET` command has been added. It can avoid opening useless data
connections for nonexistent content.
 - Dot-files are always displayed. We don't lie any more in some
commands while not lying in other commands to respect the protocol.
 - Support for RFC 2640 has been removed from the free version, as it
was early, experimental, slow, mostly broken and unmaintained code.
 - The `NLST` command doesn't perform globbing any more.
 - The `MLSD` command now prepends the path to file names.

* Version 1.0.47:
 - Unlike other directory listing commands, the STAT command should
use TLS on the control channel even if TLS has been disabled on the data
channel. It wasn't the case; this has been fixed. Thanks to Carlo
Cannas.
 - Return a 451 error code instead of 226 on aborted uploads.
 - The system user "_ftp" can be used as an alternative to "ftp" for
anonymous sessions.
 - Compatibility with libsodium > 1.0.12 was added (including minimal
mode).

* Version 1.0.46:
 - The server can now be linked against OpenSSL 1.1.x with the strict API.
 - Unmaintained contributions have been removed.
 - Globbing: the number of * in an expression has been limited to 3.

* Version 1.0.45:
 - TLS v1.0 sessions are now refused.
 - Version 1.0.44 didn't properly parse the TLSCipherSuite directive.
This has been fixed.

* Version 1.0.44:
 - The Perl and Python wrappers are gone. The daemon can now use a
configuration file without requiring external dependencies.
 - Pure-FTPd can now be linked against OpenSSL 1.1.x
 - The QUIT command didn't work properly when the server was compiled
without support for RFC2640. This has been fixed.
 - 3DES was removed from the default cipher suite.

* Version 1.0.43:
 - Passwords can now be hashed using Argon2.
 - The -J switch didn't work any more in 1.0.42. This has been fixed.
 - The default cipher suite was simplified.
 - Authentication against system accounts is compatible with OpenBSD 6.0.
 - Fixed: protocol conformance when TLS sessions are refused.
 - Altlog records can now be sent to `stdout`/`stderr`.

* Version 1.0.42:
 - Compilation fix for OpenBSD and Bitrig when Pure-FTPd is not
compiled with libsodium.
 - The connection is now dropped if HTTP commands are received.
 - LDAP force_default_gid and force_default_uid now work as documented.
 - The ONLY_ACCEPT_REUSED_SSL_SESSIONS switch (introduced in Pure-FTPd
1.0.22 circa 2009, but disabled back then due to client compatibility
concerns) is now on by default, except in broken clients compatibility mode.

* Version 1.0.41:
 - libmariadb is looked for in addition to libmysqlclient
 - MySQL: my_make_scrambled_password() is not always an exported
symbol any more, so pure-ftpd now ships a reimplementation.
 - openssl/ec.h is not available on some Linux distributions that
disable EC in OpenSSL. This is being tested by autoconf.
 - New command-line switch: -2/--certfile= to set the path to the
certificate file when using TLS.

* Version 1.0.40:
 - Support for TCP_FASTOPEN added on Linux
 - The LDAP configuration file didn't allow a default gid without also
defining a default uid. This is no longer the case.
 - OpenBSD's glob() left the glob_t structure uninitialized if the
pattern was larger than PATH_MAX, causing globfree() to free() an
unwanted pointer. The bug was introduced in Pure-FTPd 1.0.34.

* Version 1.0.39:
 - Explicitly include openssl/ec.h for OpenSSL 0.9.8 (CentOS 5)
 - Retry if SSL_shutdown() returns -1 and SSL_ERROR_WANT_(READ|WRITE)

* Version 1.0.38:
 - The default cipher suite is now 
ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SH
 - TLS forward secrecy support was added. DH parameters are loaded from
TLS_DHPARAMS_FILE, if present. ECDH is also supported - Default curve
is prime256v1 (TLS_DEFAULT_ECDH_CURVE). The best curve is automatically
selected when using LibreSSL.
 - scrypt hashed passwords can be used in the MySQL, PostgreSQL and
LDAP backends.

* Version 1.0.37:
 - The -C: prefix can be added to the cipher suite in order to make valid
client certificates mandatory. This is no longer a compile-time option.
 - The Clear Command Channel (CCC) command is now supported.
 - pure-config.py is compatible with Python 3.
 - SSL (v2, v3) is refused by default.
 - The PureDB backend supports the scrypt function in order to hash
passwords. This is the preferred algorithm, but requires the presence
of libsodium.
 - DES-hashed passwords are not supported any more.
 - LDAP uid and gid values can over overridden in the LDAP configuration file.
 - New LDAPUseTLS directive for LDAP.
 - RC4 was killed.

* Version 1.0.36:
 - The safe_write()/safe_read() factorization broke extauth. Using
safe_read_partial() to read from the extauth pipe wasn't enough.
Bug reported by Rasmus Fauske.
 - Improved autoconf detection of -fstack-protector and -fPIE
 - If 10 digits are not enough to print the size of a file in an
ls-like output, bump the max number of digits to 18. This adds support for
files up to 1 exabyte.
 - Pure-FTPd can be compiled with Cygwin, ASLR/DEP is enabled by
default on Windows, and ASCII downloads on Windows have been fixed.
 - A new undocumented macro, ALLOW_EVERYTHING_IN_FILE_NAMES, allows
any characters in a file name. Disabled by default.
 - Don't display dot files (except . and ..) if dot_read_ok is 0 in
donlist() - but not in sglob() yet. This change is purely cosmetic. There are
many ways to figure out if a file exists.

diffstat:

 net/pure-ftpd/Makefile                  |  31 ++++++++-----------------------
 net/pure-ftpd/PLIST                     |  14 +++++++++++---
 net/pure-ftpd/distinfo                  |  11 ++++++-----
 net/pure-ftpd/options.mk                |   3 ++-
 net/pure-ftpd/patches/patch-Makefile.in |  24 ++++++++++++++++++++++++
 5 files changed, 51 insertions(+), 32 deletions(-)

diffs (145 lines):

diff -r dcffbef63413 -r 2702cd810144 net/pure-ftpd/Makefile
--- a/net/pure-ftpd/Makefile    Wed Mar 11 11:08:42 2020 +0000
+++ b/net/pure-ftpd/Makefile    Wed Mar 11 11:47:19 2020 +0000
@@ -1,17 +1,8 @@
-# $NetBSD: Makefile,v 1.40 2020/02/25 14:10:44 leot Exp $
+# $NetBSD: Makefile,v 1.41 2020/03/11 11:47:19 nia Exp $
 
-DISTNAME=      pure-ftpd-1.0.35
-PKGREVISION=   7
+DISTNAME=      pure-ftpd-1.0.49
 CATEGORIES=    net
-MASTER_SITES=  ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/
-MASTER_SITES+= http://download.pureftpd.org/pub/pure-ftpd/releases/
-MASTER_SITES+= ftp://ftp2.fr.pureftpd.org/pub/mirrors/ftp.fr.pureftpd.org/pub/pure-ftpd/releases/
-MASTER_SITES+= ftp://ftp3.fr.pureftpd.org/pure-ftpd/releases/
-MASTER_SITES+= ftp://ftp.dk.pureftpd.org/mirrors/pure-ftpd/releases/
-MASTER_SITES+= ftp://ftp.nl.pureftpd.org/pub/pure-ftpd/releases/
-MASTER_SITES+= ftp://ftp.fr.pureftpd.org/pub/pure-ftpd/releases/
-MASTER_SITES+= ftp://ftp.cn.pureftpd.org/pub/pureftpd/pure-ftpd/releases/
-MASTER_SITES+= ${MASTER_SITE_SOURCEFORGE:=pureftpd/}
+MASTER_SITES=  https://download.pureftpd.org/pub/pure-ftpd/releases/
 EXTRACT_SUFX=  .tar.bz2
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
@@ -28,17 +19,11 @@
 
 CONFIGURE_ARGS.Interix+=       --without-privsep
 
-.include "options.mk"
+RCD_SCRIPTS=           pure_ftpd pure_uploadscript
 
-RCD_SCRIPTS=           pure_ftpd pure_uploadscript
-INSTALLATION_DIRS=     share/doc/pure-ftpd
+EGDIR=                 ${PREFIX}/share/examples/pure-ftpd
 
-post-install:
-       cd ${WRKSRC} && \
-               ${INSTALL_DATA} README README.Authentication-Modules     \
-                               README.Configuration-File README.Contrib \
-                               README.TLS README.Virtual-Users          \
-                               README.MySQL README.PGSQL README.LDAP    \
-                       ${DESTDIR}${PREFIX}/share/doc/pure-ftpd
-
+CONF_FILES+=           ${EGDIR}/pure-ftpd.conf \
+                       ${PKG_SYSCONFDIR}/pure-ftpd.conf
+.include "options.mk"
 .include "../../mk/bsd.pkg.mk"
diff -r dcffbef63413 -r 2702cd810144 net/pure-ftpd/PLIST
--- a/net/pure-ftpd/PLIST       Wed Mar 11 11:08:42 2020 +0000
+++ b/net/pure-ftpd/PLIST       Wed Mar 11 11:47:19 2020 +0000
@@ -1,8 +1,9 @@
-@comment $NetBSD: PLIST,v 1.9 2014/03/11 14:05:10 jperkin Exp $
+@comment $NetBSD: PLIST,v 1.10 2020/03/11 11:47:19 nia Exp $
 bin/pure-pw
 bin/pure-pwconvert
 bin/pure-statsdecode
 man/man8/pure-authd.8
+man/man8/pure-certd.8
 man/man8/pure-ftpd.8
 man/man8/pure-ftpwho.8
 man/man8/pure-mrtginfo.8
@@ -12,17 +13,24 @@
 man/man8/pure-statsdecode.8
 man/man8/pure-uploadscript.8
 sbin/pure-authd
+sbin/pure-certd
 sbin/pure-ftpd
 sbin/pure-ftpwho
 sbin/pure-mrtginfo
 sbin/pure-quotacheck
 sbin/pure-uploadscript
-share/doc/pure-ftpd/README
+share/doc/pure-ftpd/FAQ
 share/doc/pure-ftpd/README.Authentication-Modules
 share/doc/pure-ftpd/README.Configuration-File
-share/doc/pure-ftpd/README.Contrib
 share/doc/pure-ftpd/README.LDAP
+share/doc/pure-ftpd/README.MacOS-X
 share/doc/pure-ftpd/README.MySQL
 share/doc/pure-ftpd/README.PGSQL
 share/doc/pure-ftpd/README.TLS
 share/doc/pure-ftpd/README.Virtual-Users
+share/doc/pure-ftpd/pure-ftpd.conf
+share/doc/pure-ftpd/pureftpd-ldap.conf
+share/doc/pure-ftpd/pureftpd-mysql.conf
+share/doc/pure-ftpd/pureftpd-pgsql.conf
+share/doc/pure-ftpd/pureftpd.schema
+share/examples/pure-ftpd/pure-ftpd.conf
diff -r dcffbef63413 -r 2702cd810144 net/pure-ftpd/distinfo
--- a/net/pure-ftpd/distinfo    Wed Mar 11 11:08:42 2020 +0000
+++ b/net/pure-ftpd/distinfo    Wed Mar 11 11:47:19 2020 +0000
@@ -1,6 +1,7 @@
-$NetBSD: distinfo,v 1.14 2015/11/04 00:35:29 agc Exp $
+$NetBSD: distinfo,v 1.15 2020/03/11 11:47:19 nia Exp $
 
-SHA1 (pure-ftpd-1.0.35.tar.bz2) = e470bd886af68903ffba61832002fe90611f5756
-RMD160 (pure-ftpd-1.0.35.tar.bz2) = 525ae8c4564b7a8f29ec09b882eacaa7a025a911
-SHA512 (pure-ftpd-1.0.35.tar.bz2) = d54f0709fb49f480d6f3424b7a59d9c2ae3d252e6a63d98d7ccc6c8c2d3bbc959cc997ca790740afaf1207f306d516930fbd165a7c271c324954f883b3ecc688
-Size (pure-ftpd-1.0.35.tar.bz2) = 482387 bytes
+SHA1 (pure-ftpd-1.0.49.tar.bz2) = 467b5198ffeca9afa5f0aedf273553c3abe2a8e3
+RMD160 (pure-ftpd-1.0.49.tar.bz2) = b4af1d749a8bb5a441ad504a00a03081875d734d
+SHA512 (pure-ftpd-1.0.49.tar.bz2) = b44896d6fe2cda9169b1db93c5260bb892af14a173f2d25e60dd6530afe85d8e9156985609e35da7e5550dc123afb42bc5012beb9fca9011054cf0ed8b2eddef
+Size (pure-ftpd-1.0.49.tar.bz2) = 487958 bytes
+SHA1 (patch-Makefile.in) = 1fdd2463fe27605cc02ff445d55d5355617361c2
diff -r dcffbef63413 -r 2702cd810144 net/pure-ftpd/options.mk
--- a/net/pure-ftpd/options.mk  Wed Mar 11 11:08:42 2020 +0000
+++ b/net/pure-ftpd/options.mk  Wed Mar 11 11:47:19 2020 +0000
@@ -1,7 +1,8 @@
-# $NetBSD: options.mk,v 1.9 2010/02/04 12:03:51 obache Exp $
+# $NetBSD: options.mk,v 1.10 2020/03/11 11:47:19 nia Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.pureftpd
 PKG_SUPPORTED_OPTIONS= ldap mysql pgsql ssl virtualchroot utf8
+PKG_SUGGESTED_OPTIONS= ssl virtualchroot
 
 PKG_OPTIONS_LEGACY_VARS+=      PURE_FTPD_USE_MYSQL:mysql
 PKG_OPTIONS_LEGACY_VARS+=      PURE_FTPD_USE_PGSQL:pgsql
diff -r dcffbef63413 -r 2702cd810144 net/pure-ftpd/patches/patch-Makefile.in
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/net/pure-ftpd/patches/patch-Makefile.in   Wed Mar 11 11:47:19 2020 +0000
@@ -0,0 +1,24 @@
+$NetBSD: patch-Makefile.in,v 1.1 2020/03/11 11:47:19 nia Exp $
+
+Install configuration file to examples.
+
+--- Makefile.in.orig   2019-04-03 10:51:06.000000000 +0000
++++ Makefile.in
+@@ -881,7 +881,7 @@ uninstall-am: uninstall-docDATA uninstal
+ 
+ 
+ install-data-local:
+-      @$(mkinstalldirs) $(DESTDIR)$(sysconfdir); \
++      @$(mkinstalldirs) $(DESTDIR)$(datadir)/examples/pure-ftpd; \
+       if [ -f $(DESTDIR)$(sysconfdir)/pure-ftpd.conf ]; then \
+               if cmp -s $(srcdir)/pure-ftpd.conf $(docdir)/pure-ftpd.conf; then \
+                       echo "Configuration file unchanged"; \
+@@ -890,7 +890,7 @@ install-data-local:
+                       echo "You may want to compare it with the one at [$(DESTDIR)$(sysconfdir)/pure-ftpd.conf]."; \
+               fi; \
+       else \
+-              $(INSTALL_DATA) $(srcdir)/pure-ftpd.conf $(DESTDIR)$(sysconfdir)/pure-ftpd.conf; \
++              $(INSTALL_DATA) $(srcdir)/pure-ftpd.conf $(DESTDIR)$(datadir)/examples/pure-ftpd/pure-ftpd.conf; \
+       fi
+ 
+ uninstall-local:



Home | Main Index | Thread Index | Old Index