Package | Description |
---|---|
net.i2p.router.transport.udp |
The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.
|
Modifier and Type | Field and Description |
---|---|
protected UDPTransport |
PeerState._transport |
Modifier and Type | Method and Description |
---|---|
(package private) UDPTransport |
PeerState.getTransport()
Convenience for OutboundMessageState so it can fail itself
|
Constructor and Description |
---|
EstablishmentManager(RouterContext ctx,
UDPTransport transport) |
InboundEstablishState2(RouterContext ctx,
UDPTransport transport,
UDPPacket packet)
Start a new handshake with the given incoming packet,
which must be a Session Request or Token Request.
|
InboundMessageFragments(RouterContext ctx,
OutboundMessageFragments outbound,
UDPTransport transport) |
IntroductionManager(RouterContext ctx,
UDPTransport transport) |
MessageReceiver(RouterContext ctx,
UDPTransport transport) |
OutboundEstablishState2(RouterContext ctx,
UDPTransport transport,
RemoteHostId claimedAddress,
RemoteHostId remoteHostId,
RouterIdentity remotePeer,
boolean needIntroduction,
SessionKey introKey,
RouterAddress ra,
UDPAddress addr)
Prepare to start a new handshake with the given peer.
|
OutboundMessageFragments(RouterContext ctx,
UDPTransport transport,
OutboundMessageFragments.ActiveThrottle throttle) |
PacketBuilder2(RouterContext ctx,
UDPTransport transport)
No state, all methods are thread-safe.
|
PacketHandler(RouterContext ctx,
UDPTransport transport,
boolean enableSSU1,
boolean enableSSU2,
EstablishmentManager establisher,
InboundMessageFragments inbound,
PeerTestManager testManager,
IntroductionManager introManager) |
PeerState(RouterContext ctx,
UDPTransport transport,
InetSocketAddress addr,
Hash remotePeer,
boolean isInbound,
int rtt)
For SSU2
|
PeerState2(RouterContext ctx,
UDPTransport transport,
InetSocketAddress remoteAddress,
Hash remotePeer,
boolean isInbound,
int rtt,
CipherState sendCha,
CipherState rcvCha,
long sendID,
long rcvID,
byte[] sendHdrKey1,
byte[] sendHdrKey2,
byte[] rcvHdrKey2)
If inbound, caller MUST immediately call setWeRelayToThemAs() (if nonzero) and sendAck0().
|
PeerStateDestroyed(RouterContext ctx,
UDPTransport transport,
PeerState2 peer)
This must be called after the first termination or termination ack
was sent from PeerState2, so the next packet number is correct.
|
PeerStateDestroyed(RouterContext ctx,
UDPTransport transport,
RemoteHostId id,
long sendID,
long rcvID,
CipherState sendCha,
CipherState rcvCha,
byte[] sendKey1,
byte[] sendKey2,
byte[] rcvKey2,
int reason)
Direct from IES2, there was never a PS2.
|
PeerTestEvent(RouterContext ctx,
UDPTransport udp,
PeerTestManager ptmgr) |
PeerTestManager(RouterContext context,
UDPTransport transport)
Have seen peer tests (as Alice) get stuck (_currentTest != null)
so I've thrown some synchronizization on the methods;
don't know the root cause or whether this fixes it
|
UDPEndpoint(RouterContext ctx,
UDPTransport transport,
int listenPort,
InetAddress bindAddress) |
UDPReceiver(RouterContext ctx,
UDPTransport transport,
DatagramSocket socket,
String name,
SocketListener lsnr) |