What's new in LFTP 4.9.1
Jan 16, 2020
- get1: fixed creating the target directory.
- get1: fixed renaming the temp file.
- fixed a coredump on startup when IPv6 is not supported or configured.
- fixed build with --disable-ipv6.
- fixed build with Sun Studio.
New in LFTP 4.9.0 (Dec 27, 2019)
- ftp: add support for CEPR command.
- ftp: enabled TLS by default.
- ftp: fixed OPTS MLST format.
- ftps: apply rfc1738 rules.
- ftp: stop sending ALLO commands by default.
- http: fixed redirection to absolute path.
- http: improved index parsing performance.
- http: revert to original URL when temporary redirects led to an error.
- mirror --no-empty-dirs: exclude empty dirs so that chmod is not done on them.
- net: disable inet6 if there is no public ipv6 address.
- net: lowered reconnect intervals.
- sftp, fish: fixed yes/no/[fingerprint] and passphrase recognition.
- sftp: fixed a bug with truncated files when packets are reordered.
- torrent: fixed a coredump when all dht ports are busy.
- fixed file list sorting when some file names start with tilde.
- fixed retry counting when a site has multiple addresses.
- fixed "version" command for certain openssl versions.
New in LFTP 4.8.4 (Aug 2, 2018)
- fixed a security vulnerability with "file:" file names.
- fixed mirror --flat.
- http: extract links from tags.
- fixed upload of zero-length files over ftps.
- fixed assert on "mput -d".
- fixed a core dump.
- avoid multiple backup files of DHT cache.
- translations updated (uk, zh_CN).
New in LFTP 4.8.3 (Apr 13, 2018)
- fixed compilation with older C++ compilers.
- fixed 2 other core dumps on exit (incorrect order of deallocation).
New in LFTP 4.8.1 (Sep 13, 2017)
- improved rate limiting to allow per-host limits.
- ftp: make prefer-epsv default "no".
- ftp: fixed quote command and ftp:use-stat-for-list setting.
- switched to libidn2.
- fixed build with LibreSSL.
- fixed configure --disable-rpath.
- fixed coredump when a parent directory was deleted.
New in LFTP 4.8.0 (Jul 12, 2017)
- mirror: improved performance of --scan-all-first for big trees.
- mirror: new --flat option to flatten the target directory structure.
- mmv: new command for file moving; redirect mv to mmv in certain cases.
- fixed compilation with newer openssl (1.1.0 and later).
- du: allow multiple --exclude options to be combined.
- new setting cmd:nullglob for `glob' command prefix.
- http: use proppatch to set last-modified property.
- new settings net:connection-limit-timer and ftp:too-many-re.
- ftp: dynamically ajust connection limit.
- ftp: fixed core dump on LINK/SYMLINK when the command is not supported.
- get1: fixed -o option.
- sftp,fish: connect-program setting is now passed to the shell for execution.
- get/mget/put/mput: add -P option for parallel transfers and long options.
- appimage: new make target for making an AppImage file.
- fixed "local glob".
New in LFTP 4.7.6 (Feb 21, 2017)
- obsolete settings xfer:log, xfer:log-file, xfer:max-log-size are now aliased to log:enabled/xfer, log:file/xfer and log:max-size/xfer.
- fixed a missing SFTP status message.
- fixed a coredump when opening "slot:name" without a path in the slot.
- fixed XDG directories description in the man page.
- fixed off-by-one month error in apache file listing with ISO dates.
- fixed compilation on some systems.
- updated zh_TW translation.
New in LFTP 4.7.5 (Jan 3, 2017)
- http: recognize apache listing with ISO date/time.
- ipv6: ignore link-local address without a scope.
- new settings log:prefix-{recv,send,note,error}.
- documentation and help improvements.
- mirror: fixed recursion mode initialization.
- mirror: fixed assertion failure when creating remote symlinks.
- mirror: show chmod errors when verbose.
- fixed debug command to switch output to stderr if no output file given.
- ftp: add "site mkdir" support for "mkdir -p".
- ftp: fixed a long delay in "mode z" with ProFTPD.
- ftp: fixed a failed assertion in "mode z".
New in LFTP 4.7.3 (Jul 21, 2016)
- mirror: don't add source directory base name to the target if the source ends with a slash.
- mirror: fixed transfer count tracking in --scan-all-first mode.
- new setting file:use-fallocate.
- fixed "kill all" to remove queued commands.
- fixed xfer:log-file setting to a writable file in a protected directory.
- fixed xfer:clobber to allow output to non-plain files.
- fixed mirror --Move to really keep source dir if it ends with a slash.
New in LFTP 4.7.2 (May 19, 2016)
- ftp: fixed loss of 17th file from MLSD listing.
- new setting xfer:timeout.
- ssl: improved ssl performance for small read sizes.
- pget: allocate all needed disk space at once.
- http: new settings http:use-range and hftp:use-range.
- http: fixed setting http:authorization.
- http: resolve redirections when getting files information.
- http: include X-OC-MTime header in PUT requests for OwnCloud.
- mirror: changed --Move option to keep source dir if it ends with a slash.
- mirror: fixed timestamp mirroring when the source site sends redirections.
- mirror: don't report errors when the target does not support chmod.
- torrent: discard cached data after validating.
- torrent: fixed a coredump on a file read error.
- torrent: fixed closing oldest cached FD.
- torrent/DHT: fixed our external IP voting.
- torrent/DHT: black-list nodes which change node_id often.
- torrent/DHT: black-list nodes which report many bad nodes.
- torrent/DHT: ignore nodes with our own ID.
- torrent/DHT: made node search more robust.
- torrent/DHT: mark new nodes as questionable.
- translations updated (zh_TW, ru).
New in LFTP 4.7.1 (Apr 4, 2016)
- http: fixed authentication for proxy, transient errors, max-retries=1.
- http: fixed put with authentication not to use HEAD request.
- translations updated (cs, ru).
New in LFTP 4.7.0 (Mar 28, 2016)
- ftp: add MODE Z support.
- ftp: new settings ftp:use-mode-z, ftp:compressed-re, ftp:mode-z-level.
- ftp: add MFF support for chmod.
- ftp: prefer EPSV by default.
- ftp: prefer CWD-relative paths.
- ftp: enable MLSD by default (when supported).
- ftp: assume AUTH is supported based on other newer features.
- http: add support for digest authentication.
- http: fixed webdav directory listing.
- http: fixed a coredump when using a proxy for https.
- sftp: fixed mirror to sftp with xfer:use-temp-file set.
- ssl: optimized ssl for speed and lower syscall count.
- ssl: log server's certificate fingerprint.
- ssl: allow disabling certificate verification by its fingerprint.
- get: rename backup file back if new file cannot be retrieved.
- get: new settings xfer:backup-suffix and xfer:keep-backup.
- get/put/mget/mput/pget/get1: add -q (quiet) option.
- edit: allow creating a new file.
- new debug option -T (truncate output file).
- new mirror options: --{in,ex}clude-{rx,glob}-from.
- new mirror options: --Remove-source-dirs, --Move.
New in LFTP 4.6.5 (Dec 11, 2015)
- sftp: fixed handling of out-of-order replies.
- fixed futex_wait issue in SIGCHLD handler.
- ftp: fixed ls freezing with unstable server connection.
- torrent: show more correct ETA on the status line.
- fixed gnutls priority string.
- mirror: fixed excessive stack usage on large directories.
- documented some hard to fix bugs.
- improved man page on open command and cmd:prompt setting.
- translations updated (zh_TW).
New in LFTP 4.6.4 (Aug 20, 2015)
- mirror: new option --transfer-all.
- torrent: new setting torrent:timeout to limit time without any progress.
- torrent: fixed handling of udp tracker without explicit port number.
- torrent: improved transfer start time after metadata download.
- improved sftp put -c to use a single FSETSTAT.
- mirror --skip-noaccess now uses user name to check for permissions.
- don't rename temporary file to the target name when transfer fails.
- new cmd:prompt escapes \l and \L for local working directory.
- translations updated (pl, ru, uk).
- new configure option --disable-ipv6.
- fixed compilation with an old gcc.
New in LFTP 4.6.3a (Jun 18, 2015)
- new mirror setting mirror:overwrite and options --overwrite/--no-overwrite.
- new mirror option --upload-older.
- new mirror option --recursion={always,never,missing,newer}.
- try to download zero sized files as they may be non-empty.
- torrent: new options --only-new, --only-incomplete.
- torrent: fixed endless loop in FD deallocation.
- fixed a memleak when parsing a directory listing with special files.
- fixed one byte buffer overflow in cls.
- fixed cmd:fail-exit description in the man page.
- fixed large stack usage when parsing fish directory listings.
New in LFTP 4.6.2 (Apr 17, 2015)
- new command "edit" instead of the edit alias.
- new setting ssl:priority for disabling selected protocols.
- new settings fish:auto-confirm and sftp:auto-confirm.
- new setting file:use-lock to lock local files before accessing.
- ftp: fixed disconnecting on timeout (broken in 4.6.0).
- http: enclose ipv6 address in brackets in URLs and Host header.
- fixed mirror for http protocol with redirections.
- fixed `bookmark edit' to use correct XDG path if XDG is used.
- fixed a wildcard certificate validation vulnerability (CVE-2014-0139).
- fixed proxy authentication for CONNECT method.
- fixed exit code of `help' command.
- fixed sftp to show file names with slashes.
- fixed pget status display when all chunks are done except the first one.
- Ukrainian translation updated (Yuri Chornoivan).
- Russian translation updated.
New in LFTP 4.6.1 (Dec 30, 2014)
- new mirror option --scan-all-first.
- mirror --Remove-source-files now removes files already present at the target.
- added a workaround for FUSE with HadoopFS I/O error during rename(2).
- fixed du to round file size up to block size.
- fixed compilation with libressl.
- fixed OPTS MLST, removed trailing semicolon.
- fixed put to sftp with special files (like /dev/stdin).
- fixed ftp to copy SID properly with GnuTLS (Tim Kosse).
- fixed mirror to follow redirections to files (Tomas Hozza).
New in LFTP 4.6.0 (Oct 13, 2014)
- new torrent --share option.
- new setting mirror:require-source.
- new settings xfer:use-temp-file and xfer:temp-file-name.
- ftp: wait for QUIT reply before closing control socket.
New in LFTP 4.5.5 (Sep 4, 2014)
- added support for internationalized domain names.
- added lftp --norc option.
- added mirror "Finished" message.
- added ftp:catch-size setting.
- fixed net:max-retries setting.
- fixed byte counters in mirror status.
- fixed a segfault in ftps.
- fixed a spurious error message in fxp and ftp.
New in LFTP 4.5.4 (Aug 9, 2014)
- new setting mirror:sort-by (name, size, date).
- torrent: reduced cpu and memory usage.
- fixed occasional "BUG:deadlock" message.
- fixed a segfault when a directory contains duplicate file names.
- fixed a memory leak in torrent.
- fixed byte counters in mirror --depth-first.
- fixed timeout checks in FISH.
- translations updated (pl).
New in LFTP 4.4.15 (Jan 24, 2014)
- new setting pget:min-chunk-size.
- improved DHT search by preferring responded nodes.
- allow UTC timezone in http timestamps.
- fixed WebDAV rmdir operation.
- fixed torrent hang on shutdown when a tracker is unresposive.
- fixed adding too may slashes to URLs in http.
New in LFTP 4.4.14 (Dec 13, 2013)
- Fixed HEAD/PROPFIND handling in http.
- A minor memory leak fixed.
New in LFTP 4.4.13 (Nov 30, 2013)
- Fixed a bug in file size checking code.
New in LFTP 4.4.11 (Nov 13, 2013)
- Fixed a slow down in mirror from http (thanks to OGAWA Hirofumi).
- Fixed a coredump in sftp when accessing an inexistent file.
New in LFTP 4.4.10 (Oct 15, 2013)
- mirror new option --file/-f to mirror a single file.
- mirror new option -O for get/put similarity.
- WebDAV fixes and improvements.
- new setting ftp:use-utf8 to disable utf-8 activation.
- fixed handling of incorrect encoding of file names.
- fixed compilation without libiconv.
- fixed occasional hang in mirror.
- kill ssh when terminating fish or sftp connection.
New in LFTP 4.4.9 (Aug 24, 2013)
- implemented support for mirror -L in sftp.
- pass all 3 std file descriptors when attaching to lftp instance.
- ftp: added a workaround for incorrectly formatted multiline replies.
- sftp: added a workaround for RouterOS v6.
- fixed mirror --no-empty-dirs to skip directories with no included files.
- fixed segfault when there is no TERM environment variable.
- fixed torrent for meta-info files with % in their names.
- fixed compilation when IPV6_V6ONLY if not defined.
- fixed compilation with older zlib.
- fixed FD_CLOEXEC flag on cwd and transfer_log.
- fixed MLSD parsing for semicolons in file names.
- new translation: Ukrainian (thanks to Yuri Chornoivan).
- man page updated.
New in LFTP 4.4.5 (Mar 14, 2013)
- User/group name lookup performance fixed.
New in LFTP 4.4.4 (Feb 27, 2013)
- added support for TLS SNI extension.
- added UDP tracker support.
- added cls -a option to show dot files.
- new setting cmd:show-status.
New in LFTP 4.4.0 (Sep 28, 2012)
- implemented bittorrent extensions (FAST, DHT, LTEP, ut_metadata, ut_pex).
- allow torrent downloading by magnet links.
- new setting torrent:use-dht.
- new torrent option --dht-bootstrap for manual bootstrapping.
- add support for name.utf-8 and path.utf-8 in torrent metadata.
- now net:limit-rate and net:limit-total-rate settings can use suffixes, e.g. `set net:limit-total-rate 1M:500k'.
- allow numeric user names.
- don't try to upload if ALLO fails.
- send PROT to ftp servers always when AUTH is activated.
- fixed gnutls non-fatal error checking.
- fixed execution of at-finish and at-queue-finish in certain cases.
- fixed termcap coredump.
- fixed opie on 64-bit machines.
New in LFTP 4.1.1 (Nov 26, 2010)
- A bug with job command line display was fixed.
New in LFTP 4.1.0 (Nov 23, 2010)
- send path components to ftp server separately, unless TVFS is in FEAT reply.
- save pget status at the very beginning of pget execution.
- allow mirror pget continuation (mirror -c --use-pget).
- allow multiple torrent startup at once (e.g. torrent *.torrent).
- pre-allocate disk space in torrent, if posix_fallocate(3) is supported.
- new command prefix `local'. It makes the following command use local session instead of remote.
- added torrent multi-tracker support.
- fixed convert-mozilla-cookies cookie duplication.
New in LFTP 4.0.9 (Jun 16, 2010)
New in LFTP 3.7.12 (Apr 28, 2009)
- fixed core dump on `mput -d' command.
- fixed a core dump on `kill' command.
- fixed mkdir -p for sftp protocol.
- fixed some signed/unsigned conversion bugs.