tag: libunftp-0.18.0
- #356 Authenticators can now also take the connection source IP, and the client certificate chain into account in addition to the password when performing authentication.
- #356 Breaking: The
Authenticator::authenticate
method now takes aCredentials
structure reference instead of astr
reference for the second parameter. - #373 Breaking: The
StorageBackend
methods were all changed to take a reference of a user (&User
) instead of an optional reference to it (&Option<User>
). - Dependency upgrades and cleanups
- Fixed an issue where OPTS UTF8 returned the wrong FTP reply code
- #361 Don't allow consecutive PASS commands
- Added support for TLS client certificates
- #358 Added the ability for authenticators to do password-less
authentication when the user presents a valid client certificate. See the
Authenticator.cert_auth_sufficient
method.
tag: unftp-auth-jsonfile-0.2.0
- Added support for per-user IP allow lists
- #369 Added support for per-user client certificate CN matching
- #355 Created a new Docker image that generates PBKDF2 keys for the authenticator.
- compiled unftp-auth-pam against libunftp v0.18.0
- compiled unftp-auth-rest against libunftp v0.18.0
- compiled unftp-sbe-fs against libunftp v0.18.0
- compiled unftp-sbe-gcs against libunftp v0.18.0
tag: unftp-sbe-gcs-0.1.1
- Added an extension trait that adds a
Server::with_gcs
constructor. - Added support for the
SITE MD5
FTP command. Also see Server::sitemd5 in libunftp.
tag: libunftp-0.17.4
- Added a new
SITE MD5
command that allows FTP clients to obtain the MD5 checksum of a remote file. The feature is disabled for anonymous users by default. See Server::sitemd5.
tag: libunftp-0.17.3
- Added Mutual TLS support.
tag: unftp-auth-jsonfile-0.1.1
- Added support for PBKDF2 encoded passwords
tag: libunftp-0.17.2
- Fixed output formatting of the FEAT command.
- Fixed the SIZE command that wrongly took the REST restart position into account and also caused number overflows because of that.
- Removed panics that could happen when failing to load the TLS certificate or key, these errors are now propagated via
the
Server::listen
method. - Implemented TLS session resumption with server side session IDs.
- Implemented TLS session resumption with tickets.
- Added the
Server::ftps_tls_flags
method to allow switching TLS features on or off.
tag: libunftp-0.17.1
Changes in this release:
- #327 Allow PROT and PBSZ without requiring authentication.
- #330 Load TLS certificates only once at startup instead of on every connect.
- Released unftp-sbe-gcs
- Released unftp-sbe-fs
- Released unftp-auth-jsonfile
- Released unftp-auth-pam
- Released unftp-auth-rest
tag: libunftp-0.17.0
The main focus of this release was the removal of contained authentication and storage back-ends from the libunftp crate and into their own crates. As you can imagine this brings about breaking changes.
Source code for these crates can still be found in this repository under the crates
directory.
Breaking Changes:
- Split the GCS back-end into crate unftp-sbe-gcs
- Split the Filesystem back-end into crate unftp-sbe-fs
- Split the JSON file authenticator into crate unftp-auth-jsonfile
- Split the PAM authenticator into crate unftp-auth-pam
- Split the REST authenticator into crate unftp-auth-rest
- Changed some public API names to adhere to Rust naming conventions:
- PAMAuthenticator became PamAuthenticator
- PassiveHost::IP became PassiveHost::Ip
- PassiveHost::DNS became PassiveHost::Dns
- RestError::HTTPStatusError became RestError::HttpStatusError
- RestError::JSONDeserializationError became RestError::JsonDeserializationError
- RestError::JSONSerializationError became RestError::JsonSerializationError
- The
Server::with_fs
method moved into theServerExt
extension trait ofunftp-sbe-fs
- The
Server::with_fs_and_auth
method was removed. Use theServer::with_authenticator
method instead.
Other changes:
- Upgraded outdated dependencies