2015-12-10 09:53:14 +01:00
|
|
|
# Changelog
|
|
|
|
|
|
|
|
This project follows [semantic versioning](http://semver.org).
|
|
|
|
|
2020-06-09 09:03:52 +02:00
|
|
|
|
|
|
|
### UNRELEASED
|
|
|
|
|
|
|
|
- [added] Added crypto option AES128
|
2020-06-24 15:28:16 +02:00
|
|
|
- [added] Default port for peers
|
2020-06-14 19:32:12 +02:00
|
|
|
- [changed] Updated dependencies
|
2020-07-20 23:56:48 +02:00
|
|
|
- [changed] Removed C code, now 100% Rust
|
2020-06-17 22:53:14 +02:00
|
|
|
- [fixed] Fixed keepalive for small timeouts
|
2020-07-20 23:56:48 +02:00
|
|
|
- [fixed] Fixed problem with port forwarding
|
|
|
|
- [fixed] Fixed problem with TUN on dynamic host addresses
|
2020-06-09 09:03:52 +02:00
|
|
|
|
2020-06-03 17:48:47 +02:00
|
|
|
### v1.4.0 (2020-06-03)
|
2020-02-20 16:25:35 +01:00
|
|
|
|
|
|
|
- [added] Added option to listen on specified IP
|
2020-06-03 17:42:43 +02:00
|
|
|
- [added] Added support for statsd monitoring
|
2020-02-20 16:25:35 +01:00
|
|
|
- [changed] No longer using two sockets for ipv4 and ipv6
|
2020-02-20 22:52:40 +01:00
|
|
|
- [changed] Warning for missing router is now info
|
|
|
|
- [changed] New warning on claimed addresses in learning mode
|
2020-05-29 08:37:29 +02:00
|
|
|
- [changed] Rewrote argument parsing
|
2020-06-03 17:42:43 +02:00
|
|
|
- [changed] Changed stats file format to YAML
|
|
|
|
- [changed] Using asciidoc for manpage
|
|
|
|
- [changed] Updated dependencies
|
2020-05-28 08:57:32 +02:00
|
|
|
- [fixed] Fixed problem that could lead to 100% cpu consumption
|
2020-06-03 15:49:06 +02:00
|
|
|
- [fixed] Fixed startup race condition
|
2020-02-20 22:52:40 +01:00
|
|
|
|
2020-01-25 13:56:21 +01:00
|
|
|
### v1.3.0 (2020-01-25)
|
2019-12-22 22:51:40 +01:00
|
|
|
|
2020-01-25 13:56:21 +01:00
|
|
|
- [added] Building for aarch64 aka arm64 (thanks to Ivan)
|
2019-12-22 23:21:47 +01:00
|
|
|
- [added] Added feature to disable special NAT support
|
2019-12-22 22:51:40 +01:00
|
|
|
- [changed] Improved port forwarding on quirky routers
|
2019-12-22 23:03:45 +01:00
|
|
|
- [changed] Reduced peer timeout to 5min to work better with NAT
|
2020-01-25 13:56:21 +01:00
|
|
|
- [changed] Improved builder scripts
|
|
|
|
- [changed] Updated dependencies
|
2019-12-29 13:03:48 +01:00
|
|
|
- [fixed] Fixed problem with growing stats file
|
2019-12-22 22:51:40 +01:00
|
|
|
|
2019-12-22 16:50:34 +01:00
|
|
|
### v1.2.1 (2019-12-22)
|
|
|
|
|
|
|
|
- [fixed] Fixed a problem with service restrictions
|
|
|
|
|
2019-12-20 14:50:24 +01:00
|
|
|
### v1.2.0 (2019-12-20)
|
2019-12-06 09:55:24 +01:00
|
|
|
|
2019-12-06 10:21:07 +01:00
|
|
|
- [added] Added service restrictions to systemd
|
2019-12-20 00:52:49 +01:00
|
|
|
- [changed] Rust version 1.40.0
|
2019-12-06 09:55:24 +01:00
|
|
|
- [changed] Also drop privileges in foreground mode
|
|
|
|
- [changed] Set builders to Ubuntu 16.04 and CentOS 7
|
2019-12-06 10:20:24 +01:00
|
|
|
- [changed] Set keepalive to 120 secs when NAT is detected
|
2019-12-19 16:09:52 +01:00
|
|
|
- [changed] Deleting beacon file at shutdown
|
2019-12-20 14:50:24 +01:00
|
|
|
- [changed] Updated dependencies
|
2019-12-06 09:55:24 +01:00
|
|
|
- [fixed] Added parameter keepalive to manpage
|
|
|
|
- [fixed] Fixed problems on stats file when dropping permissions
|
2019-12-19 16:08:51 +01:00
|
|
|
- [fixed] Deleting files before overwriting them
|
2019-12-19 16:13:03 +01:00
|
|
|
- [fixed] Fixed duplicate port bindings
|
2019-12-06 09:55:24 +01:00
|
|
|
|
2019-12-04 16:33:42 +01:00
|
|
|
### v1.1.0 (2019-12-04)
|
2019-12-04 09:32:35 +01:00
|
|
|
|
2019-12-04 10:34:08 +01:00
|
|
|
- [added] Exchange peer timeout and adapt keepalive accordingly
|
|
|
|
- [added] Reducing published peer timeout to 5 min when NAT is detected
|
2019-12-04 13:43:38 +01:00
|
|
|
- [added] Added more tests
|
2019-12-04 16:33:42 +01:00
|
|
|
- [changed] Rust version 1.39.0
|
2019-12-04 09:32:35 +01:00
|
|
|
- [changed] Updated dependencies
|
2019-12-04 13:43:38 +01:00
|
|
|
- [fixed] Fixed potential startup dependency issue
|
2019-12-04 16:33:42 +01:00
|
|
|
- [fixed] Fixed wrong base62 encoding
|
2019-12-04 09:32:35 +01:00
|
|
|
|
2019-03-21 18:02:41 +01:00
|
|
|
### v1.0.0 (2019-03-21)
|
2019-02-18 09:56:37 +01:00
|
|
|
|
2019-02-19 22:04:21 +01:00
|
|
|
- [added] Added ability to publish small beacons for rendezvous
|
2019-03-02 01:13:35 +01:00
|
|
|
- [added] Added build chain for packages
|
2019-03-02 00:50:55 +01:00
|
|
|
- [added] Added more tests
|
2019-02-18 09:56:37 +01:00
|
|
|
- [changed] Allow to build binary without manpage
|
2019-03-02 00:50:55 +01:00
|
|
|
- [changed] Rust edition 2018
|
|
|
|
- [changed] Rust version 1.33.0
|
|
|
|
- [changed] Updated dependencies
|
2019-02-19 22:04:21 +01:00
|
|
|
- [fixed] Fixed bug that could cause repeated initialization messages
|
2019-02-18 09:56:37 +01:00
|
|
|
|
2019-02-16 15:42:03 +01:00
|
|
|
### v0.9.1 (2019-02-16)
|
|
|
|
|
2019-02-18 09:56:37 +01:00
|
|
|
- [fixed] Fixed bug in new hex secret key functionality
|
2019-02-16 15:42:03 +01:00
|
|
|
|
2019-02-15 23:44:39 +01:00
|
|
|
### v0.9.0 (2019-02-15)
|
2019-01-04 12:32:48 +01:00
|
|
|
|
2019-02-15 22:42:13 +01:00
|
|
|
- [added] Added support for cross-compilation
|
2019-01-10 19:36:50 +01:00
|
|
|
- [added] Added keepalive option for nodes behind NAT
|
|
|
|
- [added] Added ability to write out statistics file with peers and traffic info
|
|
|
|
- [added] Added dummy device type that does not allocate an interface
|
2019-02-15 22:42:13 +01:00
|
|
|
- [added] Added ability to change /dev/tun path
|
2019-01-10 19:36:50 +01:00
|
|
|
- [changed] Using ring instead of libsodium
|
|
|
|
- [changed] Using PBKDF2 for shared keys (**incompatible**)
|
2019-02-15 22:42:13 +01:00
|
|
|
- [changed] Updated dependencies
|
2019-01-04 12:32:48 +01:00
|
|
|
- [fixed] Hashed magics now also consider first character (**incompatible**)
|
|
|
|
|
2019-01-10 19:36:50 +01:00
|
|
|
### v0.8.2 (2019-01-02)
|
2017-07-22 16:34:20 +02:00
|
|
|
|
|
|
|
- [changed] Using serde instead of rustc_serialize
|
2019-01-02 00:35:14 +01:00
|
|
|
- [changed] Updated libsodium to 1.0.16
|
2017-07-22 16:34:20 +02:00
|
|
|
- [changed] Updated dependencies
|
2019-01-02 00:35:14 +01:00
|
|
|
- [changed] Making clippy happy
|
2019-01-01 22:55:15 +01:00
|
|
|
- [fixed] Fixed wrong address
|
2017-07-22 16:34:20 +02:00
|
|
|
|
2017-05-09 09:27:44 +02:00
|
|
|
### v0.8.1 (2017-05-09)
|
2016-11-28 11:28:46 +01:00
|
|
|
|
|
|
|
- [added] Added more tests
|
2017-05-04 08:22:24 +02:00
|
|
|
- [changed] Updated dependencies
|
|
|
|
- [changed] Updated libsodium to 1.0.12
|
2017-05-04 07:50:58 +02:00
|
|
|
- [changed] Small fixes to make clippy happy
|
2017-05-04 08:22:24 +02:00
|
|
|
- [changed] Removed a layer of indirection from inner loop
|
2017-05-04 07:50:58 +02:00
|
|
|
- [fixed] Fixed two problems with routing table
|
2016-11-28 11:28:46 +01:00
|
|
|
|
2016-11-25 07:29:12 +01:00
|
|
|
### v0.8.0 (2016-11-25)
|
2016-06-21 08:57:20 +02:00
|
|
|
|
2016-08-10 11:34:13 +02:00
|
|
|
- [added] Support for automatic port forwarding via UPnP
|
2016-08-08 16:30:22 +02:00
|
|
|
- [added] Added `-s` shorthand for `--subnet`
|
2016-08-10 11:34:13 +02:00
|
|
|
- [added] Support for YAML config file via `--config`
|
2016-11-23 15:21:22 +01:00
|
|
|
- [added] Support for running in the background
|
|
|
|
- [added] Support for dropping permissions
|
|
|
|
- [added] Support for writing a pid file
|
|
|
|
- [added] Support for writing logs to logfile
|
2016-08-30 08:52:22 +02:00
|
|
|
- [changed] Not overriding recently learnt addresses in switch mode
|
|
|
|
- [changed] Caching resolved addresses to increase performance
|
2016-08-08 09:34:13 +02:00
|
|
|
- [changed] Configurable magic header is now used instead of Network-ID (**incompatible**)
|
2016-08-08 16:30:22 +02:00
|
|
|
- [changed] Clarified documentation on TUN netmasks
|
2016-08-12 08:39:46 +02:00
|
|
|
- [changed] Added timestamps to output
|
|
|
|
- [changed] Using new YAML config instead of old config files (**incompatible**)
|
|
|
|
- [changed] Prefer IPv4 over IPv6 when possible
|
2016-11-28 11:28:46 +01:00
|
|
|
- [changed] Updated dependencies
|
2016-08-08 09:34:13 +02:00
|
|
|
- [fixed] Fixed documentation of listen parameter
|
2016-08-10 11:34:13 +02:00
|
|
|
- [fixed] Fixed problem with multiple subnets
|
2016-08-08 20:41:29 +02:00
|
|
|
- [fixed] Fixed problem with interrupted poll after suspend to ram
|
2016-08-12 08:39:46 +02:00
|
|
|
- [fixed] Forgot to extend peer timeout on peer exchange
|
|
|
|
- [fixed] No longer broadcasting to additional addresses
|
2016-08-05 08:50:22 +02:00
|
|
|
|
|
|
|
### v0.7.0 (2016-08-05)
|
|
|
|
|
2016-07-06 21:14:09 +02:00
|
|
|
- [added] Added more tests
|
2016-06-30 10:05:37 +02:00
|
|
|
- [added] Added pluggable polling system
|
2016-06-29 08:47:36 +02:00
|
|
|
- [added] Added documentation
|
|
|
|
- [changed] Code cleanup
|
2016-06-21 08:57:20 +02:00
|
|
|
- [changed] Updated dependencies
|
|
|
|
- [changed] Turned some clippy warnings off
|
2016-06-26 19:21:26 +02:00
|
|
|
- [changed] Cross-compiling for ARM
|
2016-08-05 08:50:22 +02:00
|
|
|
- [changed] Updated libsodium to 1.0.11
|
2016-06-26 19:21:26 +02:00
|
|
|
- [removed] Removed Address remove code for prefix table
|
|
|
|
- [fixed] Reconnecting to lost peers when receiving from them or sending to them
|
|
|
|
- [fixed] Sending peer list more often to prevent timeouts
|
2016-06-29 08:47:36 +02:00
|
|
|
- [fixed] Removing learnt addresses of lost peers
|
2016-07-06 21:14:09 +02:00
|
|
|
- [fixed] Fixed possible crash in message decoding
|
2016-06-21 08:57:20 +02:00
|
|
|
|
2016-06-02 09:36:45 +02:00
|
|
|
### v0.6.0 (2016-06-02)
|
2016-04-11 09:10:29 +02:00
|
|
|
|
2016-05-24 10:32:03 +02:00
|
|
|
- [added] Exponential backoff for reconnect timeouts
|
2016-05-11 12:18:23 +02:00
|
|
|
- [added] Systemd compatible startup scripts
|
2016-05-11 10:54:00 +02:00
|
|
|
- [changed] Repeatedly resolving connect addresses to allow DynDNS
|
2016-05-02 09:05:34 +02:00
|
|
|
- [changed] Listening on IPv4 and IPv6
|
2016-05-02 08:35:11 +02:00
|
|
|
- [changed] Using SO_REUSEADDR to allow frequent rebinding
|
2016-04-11 09:10:29 +02:00
|
|
|
- [changed] Building and using local libsodium library automatically
|
2016-05-02 08:35:11 +02:00
|
|
|
- [changed] Updated dependencies
|
2016-04-11 09:10:29 +02:00
|
|
|
|
2016-04-05 15:36:06 +02:00
|
|
|
### v0.5.0 (2016-04-05)
|
2016-02-02 22:05:54 +01:00
|
|
|
|
2016-02-05 16:58:32 +01:00
|
|
|
- [added] Added license and copyright information
|
2016-02-03 10:21:20 +01:00
|
|
|
- [added] Added documentation for daemon config files
|
2016-02-02 22:05:54 +01:00
|
|
|
- [added] Script for performance measurements
|
2016-02-08 20:39:31 +01:00
|
|
|
- [added] Added more tests and benchmarks
|
2016-02-03 10:21:20 +01:00
|
|
|
- [changed] Daemon now detects network config files on its own
|
2016-02-02 22:05:54 +01:00
|
|
|
- [changed] Using display format for addresses
|
|
|
|
- [changed] Updated dependencies
|
|
|
|
- [changed] New measurements
|
2016-02-08 20:39:31 +01:00
|
|
|
- [changed] Only calling crypto_init once
|
|
|
|
- [changed] Passing listen address as &str
|
2016-03-29 10:45:54 +02:00
|
|
|
- [changed] Using FNV hash for better performance
|
2016-03-29 14:26:59 +02:00
|
|
|
- [changed] Using slice operations instead of loops
|
2016-04-05 22:07:25 +02:00
|
|
|
- [changed] Updated libsodium to 1.0.10
|
2016-04-05 15:48:28 +02:00
|
|
|
- [changed] Renamed default.net to example.net
|
2016-02-02 23:58:47 +01:00
|
|
|
- [fixed] Fixed wrong hex address formatting
|
2016-02-04 22:40:26 +01:00
|
|
|
- [fixed] Fixed peer exchange for more than 65000 peers
|
2016-02-08 20:39:31 +01:00
|
|
|
- [fixed] Initializing crypto for benchmarks
|
2016-03-29 13:54:28 +02:00
|
|
|
- [fixed] Removing learned addresses of lost peers
|
2016-02-02 22:05:54 +01:00
|
|
|
|
2016-02-02 11:32:47 +01:00
|
|
|
### v0.4.3 (2016-02-02)
|
2016-02-02 11:01:23 +01:00
|
|
|
|
2016-02-02 11:06:54 +01:00
|
|
|
- [changed] Updated libsodium to 1.0.8
|
2016-02-02 11:01:23 +01:00
|
|
|
- [fixed] Fixed problem with nodes broadcasting to themselves
|
|
|
|
|
2016-01-19 21:58:39 +01:00
|
|
|
### v0.4.2 (2016-01-19)
|
|
|
|
|
|
|
|
- [changed] Updated dependencies
|
|
|
|
- [changed] New measurements
|
|
|
|
- [changed] Using copy trait more often
|
|
|
|
- [fixed] Fixed deb changelog
|
|
|
|
|
2015-12-22 22:52:46 +01:00
|
|
|
### v0.4.1 (2015-12-22)
|
2015-12-22 22:39:02 +01:00
|
|
|
|
|
|
|
- [changed] Logging more verbosely
|
2015-12-22 22:40:26 +01:00
|
|
|
- [fixed] Removing NULL-bytes from interface name
|
2015-12-22 22:44:25 +01:00
|
|
|
- [fixed] Supporting hostnames as peers
|
2015-12-22 22:45:52 +01:00
|
|
|
- [fixed] No longer encrypting multiple times
|
2015-12-22 22:47:41 +01:00
|
|
|
- [fixed] Properly decoding protocol header when sending
|
|
|
|
- [fixed] Corrected size of read data
|
2015-12-10 09:53:14 +01:00
|
|
|
|
2015-12-22 22:52:46 +01:00
|
|
|
### v0.4.0 (2015-12-22)
|
2015-12-10 09:53:14 +01:00
|
|
|
|
2015-12-22 19:32:10 +01:00
|
|
|
- [added] Init script
|
2015-12-13 22:03:06 +01:00
|
|
|
- [changed] Removed last payload memcopy
|
2015-12-10 09:53:14 +01:00
|
|
|
- [changed] Using RNG to select peers for peers list exchange
|
|
|
|
- [changed] Updated dependency versions
|
|
|
|
- [changed] Updated documentation
|
|
|
|
- [fixed] Printing errors instead of panics in some cases
|
2015-12-22 19:32:10 +01:00
|
|
|
- [fixed] Build script for Debian packages
|
2015-12-10 09:53:14 +01:00
|
|
|
|
|
|
|
### v0.3.1 (2015-12-03)
|
|
|
|
|
|
|
|
- [added] Unique node ids to avoid connecting to self (**incompatible**)
|
|
|
|
- [fixed] Calling sync when writing to TUN/TAP device
|
|
|
|
|
|
|
|
### v0.3.0 (2015-12-02)
|
|
|
|
|
|
|
|
- [added] Support for AES256GCM encryption
|
|
|
|
- [added] Including current libsodium in builds
|
|
|
|
- [added] --crypto parameter to select encryption method
|
|
|
|
- [changed] Increased ChaCha20Poly1305 nonce from 8 to 12 bytes (**incompatible**)
|
|
|
|
- [changed] Updated dependency versions
|
|
|
|
- [changed] More tests
|
2016-07-02 11:24:49 +02:00
|
|
|
- [changed] Removed more "unsafe" blocks
|
2015-12-10 09:53:14 +01:00
|
|
|
- [fixed] Forgot to call `sodium_init`, huge performance increase
|
|
|
|
|
|
|
|
### v0.2.0 (2015-11-26)
|
|
|
|
|
|
|
|
- [added] Sending close message at the end
|
|
|
|
- [added] Support for IPv6 addresses
|
|
|
|
- [added] Support for ChaCha20Poly1305 encryption
|
|
|
|
- [removed] Support for ChaCha20HmacSha512256 encryption
|
|
|
|
- [changed] Complete rewrite of encryption code (**incompatible**)
|
|
|
|
- [changed] Removed unused code
|
|
|
|
- [changed] Some speed improvements
|
2016-05-30 14:26:52 +02:00
|
|
|
- [changed] Removed lots of "unsafe" blocks (**fixes security issue**)
|
2015-12-10 09:53:14 +01:00
|
|
|
- [changed] Added benchmarks
|
|
|
|
- [changed] Two step handshake in order to fix problems with inconsistent state
|
|
|
|
- [fixed] Pretty error messages instead of panics with traces
|
|
|
|
- [fixed] Pretty addresses instead of debug representation
|
|
|
|
|
|
|
|
### v0.1.0 (2015-11-25)
|
|
|
|
|
|
|
|
- First release
|