Package net.i2p.router.tunnel
Class BuildMessageProcessor
- java.lang.Object
-
- net.i2p.router.tunnel.BuildMessageProcessor
-
public class BuildMessageProcessor extends Object
Receive the build message at a certain hop, decrypt its encrypted record, read the enclosed tunnel request, decide how to reply, write the reply, encrypt the reply record, and return a TunnelBuildMessage to forward on to the next hop. There is only one of these. Instantiated by BuildHandler.
-
-
Constructor Summary
Constructors Constructor Description BuildMessageProcessor(I2PAppContext ctx)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BuildRequestRecord
decrypt(TunnelBuildMessage msg, Hash ourHash, PrivateKey privKey)
Decrypt the record targetting us, encrypting all of the other records with the included reply key and IV.
-
-
-
Constructor Detail
-
BuildMessageProcessor
public BuildMessageProcessor(I2PAppContext ctx)
-
-
Method Detail
-
decrypt
public BuildRequestRecord decrypt(TunnelBuildMessage msg, Hash ourHash, PrivateKey privKey)
Decrypt the record targetting us, encrypting all of the other records with the included reply key and IV. The original, encrypted record targetting us is removed from the request message (so that the reply can be placed in that position after going through the decrypted request record). Note that this layer-decrypts the build records in-place. Do not call this more than once for a given message.- Returns:
- the current hop's decrypted record or null on failure
-
-