except for the following which are used by android,
to maintain compatibility with very old phones, for now:
addressbook.war
BOB.jar
i2p.jar
i2ptunnel.jar
mstreaming.jar
router.jar
streaming.jar
- Add clientAppManager() to I2PAppContext so it can be used there
- Add routerAppManager() to RouterContext for convenience inside router
Start of SSL support in I2PTunnelHTTPClient
- Add initialSocketData support back to I2PTunnelOutproxyRunner
- Works for orchid (and in-net?)
- TODO Doesn't work for in-net proxy
- Need separate config for SSL proxy
- Add setting in i2ptunnel server edit page
- Comment out cert setting on i2ptunnel server edit page
- Show key type on susidns details page
- Show key type on LS debug page
- Support i2cp.destination.sigType option in TunnelController and
I2PSocketManagerFactory
- Fixup of Destination.create() and Destination.size()
- Add generic off/len methods in DSAEngine, needed for streaming
- Fixup of sign/verify in streaming Packet
- Javadocs
- 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
a client socket manager configured with i2cp.newDestOnResume,
or a shared client.
This prevents lots of orphaned StreamingTimer threads.
There are still cases where these threads may stick around,
when a tunnel is stopped but not restarted. We don't know in
some cases when a tunnel could be restarted and when it can't.
destroySocketManager() should always be called when discarding a
SocketManager but i2ptunnel doesn't do that now. More to do,
but this fixes the most common case of leaked threads.
Related tickets: ##642 #961