| Package | Description |
|---|---|
| net.i2p.router.tunnel | Core tunnel management, message processing, and encryption for I2P's anonymous routing system. |
| net.i2p.router.tunnel.pool | Tunnel pool management, creation, and peer selection for I2P's anonymous routing system. |
| Modifier and Type | Method and Description |
|---|---|
TunnelCreatorConfig | InboundEndpointProcessor.getConfig()The tunnel creator config for this endpoint. |
| Modifier and Type | Method and Description |
|---|---|
boolean | TunnelDispatcher.joinInbound(TunnelCreatorConfig cfg)We are the inbound endpoint - we created this tunnel |
boolean | TunnelDispatcher.joinOutbound(TunnelCreatorConfig cfg)We are the outbound gateway - we created this tunnel |
void | TunnelDispatcher.remove(TunnelCreatorConfig cfg)Remove a tunnel we created |
| Constructor and Description |
|---|
BatchedRouterPreprocessor(RouterContext ctx,
TunnelCreatorConfig cfg)Create a preprocessor for outbound gateway tunnels. |
InboundEndpointProcessor(RouterContext ctx,
TunnelCreatorConfig cfg,
IVValidator validator)Binds the router context, tunnel creator config, and IV validator. |
OutboundGatewayProcessor(I2PAppContext ctx,
TunnelCreatorConfig cfg)Binds the router context and tunnel creator config. |
OutboundReceiver(RouterContext ctx,
TunnelCreatorConfig cfg)Binds the context and tunnel config, caching the first hop router info. |
OutboundSender(I2PAppContext ctx,
TunnelCreatorConfig config)Binds the given context and config, creating the outbound gateway processor. |
TunnelGatewayZeroHop(RouterContext context,
TunnelCreatorConfig config)Create a zero-hop gateway for the specified tunnel. |
| Modifier and Type | Class and Description |
|---|---|
class | PooledTunnelCreatorConfigData about a tunnel we created |
| Modifier and Type | Method and Description |
|---|---|
static void | BuildMessageGenerator.createRecord(int recordNum,
int hop,
TunnelBuildMessage msg,
TunnelCreatorConfig cfg,
Hash replyRouter,
long replyTunnel,
RouterContext ctx,
PublicKey peerKey,
Properties props)Place the asymmetrically encrypted record in the specified record slot,
containing the hop's configuration (as well as the reply info, if it is an outbound endpoint) |
BuildReplyHandler.Result[] | BuildReplyHandler.decrypt(TunnelBuildReplyMessage reply,
TunnelCreatorConfig cfg,
List<Integer> recordOrder)Decrypt the tunnel build reply records. |
static boolean | BuildMessageGenerator.isBlank(TunnelCreatorConfig cfg,
int hop)Check if a hop should have a blank (random) record. |
static void | BuildMessageGenerator.layeredEncrypt(I2PAppContext ctx,
TunnelBuildMessage msg,
TunnelCreatorConfig cfg,
List<Integer> order)Encrypt the records so their hop ident is visible at the appropriate times. |