at least one OB tunnel, so the client waits until we are ready.
This will reduce drops, retransmissions, and failures on new client tunnels.
Fixes to prevent multiple pending LS requests.
- When socket is closed, set sessionID and LS to null,
close subsession and set its sessionID and LS to null
- Checks on client side for null session ID
- Check for null session in Destroy Session message
- Don't kill I2CP connection due to a bad session ID
in a SendMessage, just drop the message and send
a MessageStatusMessage
- Log tweaks
Catch null SessionId in messages and stop connection instead of NPE
Wait for LS in SubSession in connect() so we don't send data w/o
a session ID and leaseset
Log tweaks
Send our own RI unsolicited in reply if we aren't floodfill
Don't ack or flood a store of an unknown type
PeerTestJob: Don't generate zero reply token
Tunnels: More checks of messages received down exploratory tunnels
javadocs and comments
- Directly connect to nearby floodfills to share our RI to speed up integration of new floodfills (#1195).
- Called on both non-ff -> ff OR ff -> non-ff.
- Create FloodfillRouterInfoFloodJob to do so.
NetDb: Drop all-zero lookups and stores, add stats
SSU:
- Fix debug logging of dumped packets
- Drop sessions with bad clock skew, banlist peer, add stats
- Drop sessions with corrupt DSM, banlist peer, add stats
Log tweaks
isn't destroyed and immediately replaced by i2ptunnel,
which caused dup shared clients in a race at startup;
Clarify session exception text if not open
isn't treated as CLOSED and immediately replaced by i2ptunnel,
which caused dup shared clients in a race at startup
(possible related tickets #642, #650, #815, #1545)