Package net.i2p.router.tunnel
Class InboundEndpointProcessor
- java.lang.Object
-
- net.i2p.router.tunnel.InboundEndpointProcessor
-
class InboundEndpointProcessor extends Object
Receive the inbound tunnel message, removing all of the layers added by earlier hops to recover the preprocessed data sent by the gateway. This delegates the crypto to the OutboundGatewayProcessor, since the tunnel creator does the same thing in both instances.
-
-
Constructor Summary
Constructors Constructor Description InboundEndpointProcessor(RouterContext ctx, TunnelCreatorConfig cfg)
Deprecated.used only by unit testsInboundEndpointProcessor(RouterContext ctx, TunnelCreatorConfig cfg, IVValidator validator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TunnelCreatorConfig
getConfig()
Hash
getDestination()
boolean
retrievePreprocessedData(byte[] orig, int offset, int length, Hash prev)
Undo all of the encryption done by the peers in the tunnel, recovering the preprocessed data sent by the gateway.
-
-
-
Constructor Detail
-
InboundEndpointProcessor
@Deprecated InboundEndpointProcessor(RouterContext ctx, TunnelCreatorConfig cfg)
Deprecated.used only by unit tests
-
InboundEndpointProcessor
public InboundEndpointProcessor(RouterContext ctx, TunnelCreatorConfig cfg, IVValidator validator)
-
-
Method Detail
-
getDestination
public Hash getDestination()
-
getConfig
public TunnelCreatorConfig getConfig()
-
retrievePreprocessedData
public boolean retrievePreprocessedData(byte[] orig, int offset, int length, Hash prev)
Undo all of the encryption done by the peers in the tunnel, recovering the preprocessed data sent by the gateway.- Parameters:
orig
- original data with an extra 16 byte IV prepended.offset
- index into the array where the extra 16 bytes (IV) beginslength
- how much of orig can we write to (must be a multiple of 16). Should always be 1024 bytes.- Returns:
- true if the data was recovered (and written in place to orig), false if it was a duplicate or from the wrong peer.
-
-