* Mon Jun 12 2023 R4SAS <r4sas@i2pd.xyz>
- update to 2.48.0:
* Added 'critical' log level
* Allow user/password authentication method for SOCK5 proxy
* Fixed reload tunnels
* Don't recognize new router as floodfill until it proves it's real
* Fixed incomplete HTTP headers in I2P tunnels
* Publish congestion cap 'G' if transit is not accepted
* Added webconsole button to drop a remote LeaseSet manually
* Publish encrypted RouterInfo through tunnels
* Print local b32 address on webconsole destination page
* Fixed incorrect address caps for unspecified ipv6 address
- update to 2.47.0:
* DHT for floodfills instead plain list
* Process router's messages in separate thread
* Don't publish non-reachable router
* Fixed memory leak in Windows network state detection
* Fixed reseed attempts from invalid address
* Add support for domain addresses for Yggdrasil reseeds
* Send and check target destination in first streaming SYN packet
* Added congestion caps (https://geti2p.net/spec/proposals/162-congestion-caps)
* Added SAM UDP port parameter
- update to 2.46.1:
* Fixed race condition while getting router's peer profile
* Fixed creation of new router.info
* Fixed displaying LeaseSets in the webconsole
* Fixed crash when processing ACK request
- update to 2.46.0:
* New algorithm for tunnel creation success rate calculation
* Localization to Swedish, Portuguese, Turkish, Polish
* Fixed deadlock during processing I2NP block with Garlic in ECIES encrypted message to router
* Periodically send Datetime block in NTCP2 and SSU2 and check
* Better profiling for unreachable routers
* Minimal version for floodfill is 0.9.51
* Drop incoming NTCP2 and SSU2 connection if published IP doesn't match actual endpoint
* Sort transports by endpoints in webconsole
* Don't publish "0.0.0.0" in RouterInfo
* Check referer when processing Addresshelper
* Select first hop from high bandwidth peers for client tunnels
* Exclude unreachable router from NetDB for 2 hours
* Fixed missing NTCP2 address in RouterInfo if enabled back
* Fixed race condition with encrypted LeaseSets
- update to 2.45.1:
* Fixed UPnP crash if SSU2 or NTCP2 is disabled
* Fixed crash on termination for some platforms
* Network status is always OK if peer test msg 5 received
* Added "Full Cone NAT" status error
* Drop duplicated I2NP messages in SSU2
* Set rejection code 30 if tunnel with id already exists
- update to 2.45.0:
* Removed SSU transport
* Fixed file descriptors leak
* 1 and 15 seconds bandwidth calculation for i2pcontrol
* Compressible padding for I2P addresses
* Don't accept incoming session from invalid/reserved addresses for NTCP2 and SSU2
* Drop RouterInfos and LeaseSets with timestamp from future
* Increased default max transit tunnels number from 2500 to 5000 or 10000 for floodfill
* Fixed ::1 address in RouterInfo
* SSU2 network error handling (especially for Windows)
* Localization to Czech
* NTCP2 and SSU2 timestamps are rounded to seconds
* Don't send SSU2 termination again if termination received block received
* Fixed random crash on AddressBook update
* Test for Symmetric NAT with peer test msgs 6 and 7
* Fixed spamming to log if no descriptors
* Don't select overloaded peer for next tunnel
* Limit simultaneous tunnel build requests by 4 per pool
* Fixed RTT self-reduction for long-live streams
* Fixed crash if incorrect LeaseSet size
* "No Descriptors" router error state
* Remove "X-Requested-With" in HTTP Proxy for non-AJAX requests
* Fixed SSU2 network error handling (especially for Windows)
* Tue Oct 23 2018 Jan Engelhardt <jengelh@inai.de>
- Trim filler word from descriptions and update grammar.
Version: 2.44.0-bp155.1.7
* Tue Dec 06 2022 Dirk Müller <dmueller@suse.com>
- update to 2.44.0:
* SSL connection for server I2P tunnels
* Localization to Italian and Spanish
* SSU2 through SOCKS5 UDP proxy
* Reload tunnels through web console
* SSU2 send immediate ack request flag
* SSU2 send and verify path challenge
* Configurable ssu2.mtu4 and ssu2.mtu6
* SSU2 is enbaled and SSU is disabled by default
* Separate network status and error
* Random selection between NTCP2 and SSU2 priority
* Added notbob.i2p to jump services
* Remove DoNotTrack flag from HTTP Request header
* Skip addresshelper page if destination was not changed
* SSU2 allow different ports from RelayReponse and HolePunch
* SSU2 resend PeerTest msg 1 and msg 2
* SSU2 Send Retry instead SessionCreated if clock skew detected
* Long HTTP headers for HTTP proxy and HTTP server tunnel
* SSU2 resends and resend limits
* Crash at startup if addressbook is disabled
* NTCP2 ipv6 connection through SOCKS5 proxy
* SSU2 SessionRequest with zero token
* SSU2 MTU less than 1280
* SSU2 port=1
* Incorrect addresses from network interfaces
* Definitions for Darwin PPC; do not use pthread_setname_np
* Complete SSU2 implementation
* Localization to Chinese
* Send RouterInfo update for long live sessions
* Explicit ipv6 ranges of known tunnel brokers for MTU detection
* Always send "Connection: close" and strip out Keep-Alive for server HTTP
tunnel
* Show ports for all transports in web console
* Translation of webconsole site title
* Support for Windows ProgramData path when running as service
* Ability to turn off address book
* Handle signals TSTP and CONT to stop and resume network
* ### Changed
* Case insensitive headers for server HTTP tunnel
* Do not show 'Address registration' line if LeaseSet is encrypted
* SSU2 transports have higher priority than SSU
* Disable ElGamal precalculated table if no SSU
* Deprecate limits.ntcpsoft, limits.ntcphard and limits.ntcpthreads config
options
* SSU2 is enabled and SSU is disabled by default for new installations
* Typo with Referer header name in HTTP proxy
* Can't handle garlic message from an exploratory tunnel
* Incorrect encryption key for exploratory lookup reply
* Bound checks issues in LeaseSets code
* MTU detection on Windows
* Crash on stop of active server tunnel
* Send datagram to wrong destination in SAM
* Incorrect static key in RouterInfo if the keys were regenerated
* Duplicated sessions in BOB
* Thu Jun 09 2022 R4SAS <r4sas@i2pd.xyz>
- Update to version 2.42.1
* Fixed incorrect jump link in HTTP Proxy
- Update to version 2.42.0
* Preliminary SSU2 implementation
* Tunnel length variance
* Localization to French
* Fixed encrypted LeaseSet for EdDSA signature
* UDP tunnels reload
* Fixed incorrect processing of i2cp.dontPublishLeaseSet param
* Updated reseeds list
* Win32 service
* Daily cleanup of obsolete peer profiles
* Fixed race conditions for short tunnel build message and RouterInfo
buffer allocation
* Don't show version in title of web console
* Fixed tunnel build if clock was out of sync
- Update to version 2.41.0
* Clock syncronization through SSU
* Added localization to German
* Select compatible outbound tunnel for I2CP messages
* Use TCP/IP sockets for I2CP on Android instead local sockets
* Restart webconsole's acceptor in case of exception
* Try another floodfill for publishing if no compatible tunnels found
* Reduce memory usage for RouterInfo structures
* Avoid duplicated addresses in RouterInfo. Check presence of netId and version
* Update reseed servers list/cerificates
* Changed webconsole's dark style colors
* Fixed attempt to use Yggdrasil on start on Android
* Fixed severe packets drop in SSU
* Fixed crash on tunnel tests
* Fixed loading addressbook subscriptions from config
- Update to version 2.40.0
* "Keep alive" parameter for client tunnels
* Fixed tunnels reload (kill -s HUP)
* Support openssl 3.0.0
* Build tunnels through ECIES routers only
* Reduced memory usage
* Localization to Armenian
* Added Windows menu item for opening datadir
* Reseed if too few floodfills
* Don't publish old and replacing tunnel in LeaseSet
* Webconsole light/dark theme depending on system settings (via CSS)
* Updated reseed servers list
* Fixed build for Build on GNU/Hurd
* Set gzip compression to false by default
* i18n code called from ClientContext (libi2pd_client)
- Update to version 2.39.0
* Short tunnel build messages
* Localization to Russian, Ukrainian, Turkmen, Uzbek and Afrikaans
* Custom CSS styles for webconsole
* Avoid slow tunnels with more than 250 ms per hop
* Process DELAY_REQUESTED streaming option
* "certsdir" options for certificates location
* Yggdrasil reseed for v0.4, added two more
* Rekey of all routers to ECIES
* Encryption type 0,4 by default for server tunnels
* Fixed zero-hop tunnels
* Set minimal version for floodfill to 0.9.38
* Fixed crash upon SAM session termination
* NTP sync through ipv6
* Allow ipv6 addresses for UDP server tunnels
* Consistent path for explicit peers
* Always create new tunnel from exploratory pool
* Better distribution for random tunnel's peer selection
Version: 2.38.0-bp154.1.16
* 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