v1.25 Feb 5th 2016 p1
Long time since the previous release (but there is always github master!) - lot's of changes:
New features/major changes:
- Much better command line interface to match the need of the encryption key transmission securely, "-" argument for the sender reads the connection url from stdin, which the receiver emits on stdout. So the 2 can be plugged through a pipe (securely using ssh - which will only be used for secure key exchange, everything else blazing fast and encrypted through WDT's own socket)
ssh dsthost wdt -directory destdir | ssh srchost wdt -directory srcdir -
# Or more complex:
(ssh localhost wdt -fork -start_port 0 -directory /tmp/dst1; ls *.h ) | wdt -manifest - -
- Aes GCM crypto support (requires a recent openssl version) : is now the default - it does both encryption and validates the integrity in 1 pass. We also support this during error handling only resuming at the last block that was successfully validated.
- Socket buffer size can be set explicitly (using -send_buffer_size and -receive_buffer_size)
Bug fixes:
- improved TransferLogManager locking (fail fast when can't be acquired) and detection of deleted containing directory/log file
- ResourceController double create, wdtSend can cancel previous / preexisting transfer
- with opening files during discovery
Misc:
- Consistent use of "Mbytes" throughout WDT for 1024*1024 = 1048576 bytes (aka Mebibyte (MiB)
- Testing/path improvements
- Removing direct use of WdtOptions::get across the code base - now the options can be different for different sender/receivers in the same process.