* Wed May 19 2021 Ferdinand Thiessen <rpm@fthiessen.de>
- Update to version 2.38.0
* ipv6 introducers and peer test
* Support .b32.i2p addresses and hostnames for SAM STREAM CREATE
* Blinding of EdDSA signing keys
* Publish iexp param for introducers
* Send updated LeaseSet for incoming ECIES-x25519 session
* Bind ipv6 or yggdrasil NTCP2 acceptor to specified address
* Don't publish LeaseSet without inbound tunnels
* Rekey of all routers but floodfills to ECIES
* Recognize ipv4 and ipv6 SSU addresses without host
* Show ipv6 network status and router version on the webconsole
* Sat May 08 2021 Ferdinand Thiessen <rpm@fthiessen.de>
- Update to version 2.37.0
* Address registration line for reg.i2p and stats.i2p through the
web console
* "4" and "6" caps for addresses without published IP address
* Fixed incoming SSU session termination after 5 seconds
* Floodfills with "U" cap are not ignored anymore
* Show actual IP addresses for proxy connections
* address4 and address6 parameters to bind outgoing connections
to lookuplocal BOB extended command
* Mesh and Proxy network statuses
* Symmetric NAT network status error
* NTCP2 and reseed HTTP proxy support authorization now
* Fixed race condition between tunnel build and floodfill
requests decryption for ECIES routers
* Correct handling of numeric bandwidth limitation
* Rekey of low-bandwidth routers to ECIES
* Bind server tunnel connection to specified address
* Outbound tunnel endpoint must be ipv4 compatible
* Allow incoming Yggdrasil connection if NTCP2 is connected
through a proxy
- Update to version 2.36.0
* ECIES-x25519 (crypto type 4) for new routers
* reg.i2p for default addressbook instead inr.i2p
* Yggdrasil transports and reseeds
* Encrypted lookup and publications to ECIES-x25519 floodfiils
* Dump addressbook in hosts.txt format
* Try to connect to all compatible addresses from peer's
RouterInfo
* ECIES-X25519-AEAD-Ratchet for shared local destination
* Fixed handling chunked HTTP response in addressbook
* Calculate missing ECIES-X25519-AEAD-Ratchet tags for multiple
streams with the same destination
* Request RouterInfo through exploratory tunnels if direct
connection to fllodfill is not possible
* Select reachable router of inbound tunnel gateway
* Reseed if no compatible routers in netdb
* Check if public x25519 key is valid
* Replace LeaseSet completely if store type changes
* Limit tunnel length to 8 hops and quantity to 16
* Decrypt follow-on ECIES-X25519-AEAD-Ratchet NSR messages
* Fixed SSU crash on termination
* Correct NAME for NAMING REPLY in SAM
* Viewport and styles on error in HTTP proxy
* Cumulative SSU ACK bitfields
* Wed Jan 20 2021 Wang Jun <jgwang@suse.com>
- Update to version 2.35.0
* Added
- ECIES-x25519 routers
- Random intro keys for SSU
- Graceful shutdown timer for windows
- Send queue for I2CP messages
- Update DSA router keys to EdDSA
- TCP_QUICKACK for NTCP2 sockets on Linux
* Changed
- Exclude floodfills with DSA signatures and < 0.9.28
- Random intervals between tunnel tests and manage for tunnel pools
- Don't replace an addressbook record by one with DSA signature
- Publish RouterInfo after update
- Create paired inbound tunnels if no inbound tunnels yet
- Reseed servers list
* Fixed
- Transient signature length, if different from identity
- Terminate I2CP session if destroyed
- RouterInfo publishing confirmation
- Check if ECIES-X25519-AEAD-Ratchet session expired before generating more tags
- Correct block size for delivery type local for ECIES-X25519-AEAD-Ratchet
- Update to version 2.34.0
* Added
- Ping responses for streaming
- STREAM FORWARD for SAM
- Tunnels through ECIES-x25519 routers
- Single thread for I2CP
- Shared transient destination between proxies
- Database lookups from ECIES destinations with ratchets response
- Handle WebDAV HTTP methods
- Don't try to connect or build tunnels if offline
- Validate IP when trying connect to remote peer
- Handle ICMP responses and WinAPI errors for SSU
* Changed
- Removed NTCP
- Dropped gcc 4.7 support
- Encyption type 0,4 by default for client tunnels
- Stripped out some HTTP header for HTTP server response
- HTTP 1.1 addressbook requests
- Set LeaseSet type to 3 for ratchets if not specified
- Handle SSU v4 and v6 messages in one thread
- Eliminate DH keys thread
* Fixed
- Random crashes on I2CP session disconnect
- Stream through racthets hangs if first SYN was not acked
- Check "Last-Modified" instead "If-Modified-Since" for addressbook reponse
- Trim behind ECIESx25519 tags
- Few bugs with Android main activity
- QT visual and layout issues
* Wed Aug 26 2020 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.33.0:
* Shared transient addresses
* crypto.ratchet.inboundTags paramater
* Multiple encryption keys through I2CP
* Pre-calculated x25519 ephemeral keys
* Change datagram routing path if nothing comes back in 10
seconds
* Shared routing path for datagram session
* UDP tunnels send mix of repliable and raw datagrams in bulk
* Encrypt SSU packet again upon resend
* Start new tunnel message if remaining buffer is too small
* Use LeaseSet2 for ECIES-X25519-AEAD-Ratchet automatically
* Save new ECIES-X25519-AEAD-Ratchet session with NSR tagset
* Generate random padding lengths for ECIES-X25519-AEAD-Ratchet
in bulk
* Webconsole layout
* Reseed servers list
* Don't connect through terminated SAM destination
* Differentiate UDP server sessions by port
* ECIES-X25519-AEAD-Ratchet through I2CP
* Don't save invalid address to AddressBook
* ECDSA signatures names in SAM
* AppArmor profile
- Drop i2pd-2.19.0-apparmor.patch
* Mon Aug 17 2020 Dirk Mueller <dmueller@suse.com>
- update to 2.32.1:
- Read explicit peers in tunnels config
- Generation of tags for detached sessions
- Non-updating LeaseSet1
- Start when deprecated websocket options present in i2pd.conf
- Multiple encryption types for local destinations
- Next key and tagset for ECIES-X25519-AEAD-Ratchet
- NTCP2 through SOCKS proxy
- Throw error message if any port to bind is occupied
- gzip parameter for UDP tunnels
- Show ECIES-X25519-AEAD-Ratchet sessions and tags on the web console
- Simplified implementation of gzip for no compression mode
- Allow ECIES-X25519-AEAD-Ratchet session restart after 2 minutes
- Added logrotate config for rpm package
- Select peers for client tunnels among routers >= 0.9.36
- Check ECIES flag for encrypted lookup reply
- Streaming MTU size 1812 for ECIES-X25519-AEAD-Ratchet
- Don't calculate checksum for Data message send through ECIES-X25519-AEAD-Ratchet
- Catch network connectivity status for Windows
- Stop as soon as no more transit tunnels during graceful shutdown for Android
- RouterInfo gzip compression level depends on size
- Send response to received datagram from ECIES-X25519-AEAD-Ratchet session
- Update webconsole functional
- Increased max transit tunnels limit
- Reseeds list
- Dropped windows support in cmake
- Correct timestamp check for LeaseSet2
- Encrypted leaseset without authentication
- Change SOCKS proxy connection response for clients without socks5h support (#1336)
* Mon Apr 13 2020 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.31.0:
* NTCP2 through HTTP proxy
* Publish LeaseSet2 for I2CP destinations
* Show status page on main activity for android
* Handle ECIESFlag in DatabaseLookup at floodfill
* C++17 features for eligible compilers
* Droped Websockets and Lua support
* Send DeliveryStatusMsg for LeaseSet for
ECIES-X25519-AEAD-Ratchet
* Keep sending new session reply until established for
* Updated SSU log messages
* Reopen SSU socket on exception
* Security hardening headers in web console
* Various web console changes
* Various QT changes
* NTCP2 socket descriptors leak
* Race condition with router's identity in transport sessions
* Not terminated streams remain forever
* Tue Mar 10 2020 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.30.0:
* Single threaded SAM
* Experimental support of ECIES-X25519-AEAD-Ratchet crypto type
* Minimal MTU size is 1280 for ipv6
* Use unordered_map instead map for destination's sessions and
tags list
* Use std::shuffle instead std::random_shuffle
* SAM is single threaded by default
* Reseeds list
* Correct termination of streaming destination
* Extra ',' in RouterInfo response in I2PControl
* SAM crash on session termination
* Storage for Android 10
* Tue Oct 22 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.29.0:
* Client auth flag for b33 address
* Remove incoming NTCP2 session from pending list when established
* Handle errors for NTCP2 SessionConfrimed send
* SAM crash if invalid lookup address
* Possible crash when UPnP enabled on shutdown
* Wed Aug 28 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.28.0:
* RAW datagrams in SAM
* Publishing encrypted LeaseSet2 with DH or PSH authentication
* Ability to disable battery optimization for Android
* Transport Network ID Check
* Set and handle published encrypted flag for LeaseSet2
* ReceiveID changes in the same stream
* "\r\n" command terminator in SAM
* Addressbook lines with signatures
* Thu Jul 04 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.27.0:
* Support of PSK and DH authentication for encrypted LeaseSet2
* Uptime is based on monotonic timer
* BOB status command response
* Correct NTCP2 port if NTCP is disabled
* Flood encrypted LeaseSet2 with store hash
* Fri Jun 07 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.26.0:
* HTTP method "PROPFIND"
* Detection of external ipv6 address through the SSU
* NTCP2 publishing depends on network status
* ntcp is disabled by default, ntcp2 is published by default
* Response to BOB's "list" command
* ipv6 address is not longer NTCP's local endpoint's address
* Reseeds list
* HTTP_REFERER stripping in httpproxy (#823)
* Check and handle incorrect BOB input
* Ignore introducers for NTCP or NTCP2 addresses
* RouterInfo check from NTCP2
* Fri May 10 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.25.0:
* Create, publish and handle encrypted LeaseSet2
* Support of b33 addresses
* RedDSA key blinding
* .b32.i2p addresses in jump links
* ntcp2.addressv6 parameter
* Allow HTTP headers without value
* Set data directory from external storage path for Android
* addresshelper support is configurable per tunnel
* gradlew script for android build
* Deletion of expired encrypted LeaseSet2 on floodfills
* ipv6 fallback address
* SSU incoming packets routing
Version: 2.24.0-bp151.1.1
* Sat Apr 13 2019 Alexei Podvalsky <avvissu@yandex.by>
- Add startup option '--daemon' to i2pd.service (fix core dump on startup)
* Fri Mar 22 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.24.0:
* Support of transient keys for LeaseSet2
* Support of encrypted LeaseSet2
* Recognize signature type 11 (RedDSA)
* Support websocket connections over HTTP proxy
* Ability to disable full addressbook persist
* Don't load peer profiles if non-persistant
* REUSE_ADDR for ipv6 acceptors
* Reset eTags if addressbook can't be loaded
* Build with boost 1.70
* Filter out unspecified addresses from RouterInfo
* Check floodfill status change
* Correct SAM response for invalid key
* SAM crash on termination for Windows
* Race condition for publishing
* Standard LeaseSet2 support
* Ability to adjust timestamps through the NTP
* Ability to disable peer profile persist
* Request permission for android >= 6
* Initial addressbook to android assets
* Cancel graceful shutdown for android
* Russian translation for android
* Chacha20 and Poly1305 implementation
* Eliminate extra copy of NTCP2 send buffers
* Extract content of tunnel.d from assets on android
* Removed name resolvers from transports
* Update reseed certificates
* LeaseSet published content verification
* Exclude invalid LeaseSets from the list on a floodfill
* Build for OpenWrt with openssl 1.1.1
* Fri Nov 09 2018 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.22.0:
* Multiple tunnel config files from tunnels.d folder
* Fetch own RouterInfo upon SessionRequest for NTCP2
* Faster XOR between AES blocks for non AVX capable CPUs
* Fixed NTCP2 termination send
* Wed Oct 24 2018 Alexei Podvalsky <avvissu@yandex.by>
- Drop i2pd-2.17.0-libs.patch
* Tue Oct 23 2018 Jan Engelhardt <jengelh@inai.de>
- Trim filler word from descriptions and update grammar.
* Tue Oct 23 2018 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.21.1:
* Handle I2NP messages longer than 32K
* cost=13 for unpublished NTCP2 address
* Fri Oct 05 2018 Alexei Podvalsky <avvissu@yandex.by>
- Update to 2.21.0:
* Use EdDSA, x25519 and SipHash from openssl 1.1.1 if available
* NTCP2 ipv6 incoming connections
* Bandwidth classes 'P' and 'X' without 'O'
* Support android api > 26
* Update own RouterInfo if no SSU
* Fixed NTCP address disappears if NTCP2 enabled
* Show total number of destination's outgoing tags in the web
console
* Fri Aug 24 2018 avvissu@yandex.by
- Update to 2.20.0:
* Full implementation of NTCP2
* Provide assets for android
* Some fix in web console
* Wed Jun 27 2018 avvissu@yandex.by
- Update to 2.19.0:
* ECIES support for RouterInfo
* HTTP outproxy authentication
* AVX/AESNI runtime detection
* Android build using gradle
* Implementation of I2CP reconfigure
* EdDSA for RouterInfo by default
* Datagrams to websocks
* Fixed tunnels reload
* Fixed headers in webconsole
* Correct SAM session name
* Updated docker
* Multiple changes for QT GUI
* Initial implementation of NTCP2
* Added I2PControl method "ClientServicesInfo"
- Update i2pd-2.17.0-apparmor.patch > i2pd-2.19.0-apparmor.patch
* Wed Jan 31 2018 avvissu@yandex.by
- Update to 2.18.0:
* Graceful shutdown as soon as no more transit tunnels
* Show tunnel nicknames for I2CP destination in WebUI
* Re-create HTTP and SOCKS proxy and shared local destination by tunnel reload
* Fixed issues and timing for addressbook requests
* Return correct code if pid file can't be created
* Fixed build errors with boost 1.66
* Use transient local destination by default if not specified
* Check LeaseSet's signature before update
* Fixed few race conditions for SAM
- Drop i2pd-2.17.0-boost-1.66.patch (fixed))
* Thu Jan 18 2018 avvissu@yandex.by
- Rename the macros: USER > sysuser; GROUP > sysgroup
* Sat Jan 13 2018 avvissu@yandex.by
- Fix build with boost >= 1.66 (i2pd-2.17.0-boost-1.66.patch)
* Wed Dec 06 2017 avvissu@yandex.by
- Initial package