java.lang.Object
net.i2p.router.crypto.ratchet.RatchetPayload.Block
net.i2p.router.crypto.ratchet.RatchetPayload.PaddingBlock
- Enclosing class:
RatchetPayload
Padding block for ratchet payload size alignment and obfuscation.
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final I2PAppContextThe app context.private intEncoded size of the clove block.Constructor Summary
ConstructorsMethod Summary
Public MethodsMethods inherited from class RatchetPayload.Block
getTotalLength, toString, write
Field Details
sz
private int szEncoded size of the clove block.ctx
The app context.
Constructor Details
PaddingBlock
public PaddingBlock(int size) Size of the zero-filled padding.- Parameters:
size- padding size, with zero-filled data
Method Details
setSize
void setSize(int size) Set the padding size, for reuse.- Parameters:
size- the new padding size
getDataLength
public int getDataLength()Data length of the block.- Specified by:
getDataLengthin classRatchetPayload.Block- Returns:
- the size of the block, NOT including the 3 byte header (type and size)
writeData
public int writeData(byte[] tgt, int off) Writes the block to the output buffer at the given offset.- Specified by:
writeDatain classRatchetPayload.Block- Parameters:
tgt- the target bufferoff- the offset in tgt where the block data starts- Returns:
- the offset just past the data written to tgt