- Add support for b64 conversion in destLookup()
- Catch invalid message length sooner
I2Ping:
- Extend I2PTunnelClientBase so non-shared-client,
I2CP options, and other features will work
- Fixes for fields and threading
Streaming:
- Send LS with ping (broken since 0.9.2)
- Set the NO_ACK flag on pings and pongs
- Add support for hostname lookups over I2CP with new
HostLookup and HostReply messages.
- Move username / password from CreateSession
to GetDate for early authentication;
this is an incompatible chage.
Outside router context with authentication enabled,
new clients will not work with old routers.
Early authentication is not yet enforced, enable with
i2cp.strictAuth=true. Will change default to true in a later release.
- Block all actions before authentication.
- Better disconnect messages to clients for diagnostics
- Improve lookup command, add auth command in i2ptunnel CLI for testing
- Don't start ClientWriterRunner thread in constructor
- Don't flush in ClientWriterRunner unless necessary
- Send GetDate even in SimpleSession outside of RouterContext
- Improve SetDate wait logic to reduce locks and break out when
Disconnect received
- Add Disconnect handler to SimpleSession
- I2Ping cleanups
- Javadocs
- Move config file and DHT persistence file to a config dir
- Move per-torrent configuration from "zmeta" in the main config file
to a per-torrent config file (ticket #1132)
- Split timestamp and bitfield into separate configs
- Fix misspelling of autoStart config
- Remove two unused SnarkManager methods
- Just before midnight, flood to new location too so lookups
don't fail after keyspace rotation (ticket #510)
- Refactor RoutingKeyGenerator and UpdateRoutingKeyModifierJob
in support of the above
- Display next key on LS debug page
- Increase new kad size to K=24, B=4
- Fix router count by counting in the data store, not the kbuckets
- Randomize the order we load router infos at startup so we
don't bias the kbuckets