class SSU2Payload extends Object
| Modifier and Type | Class and Description |
|---|---|
static class | SSU2Payload.AckBlockBlock containing acknowledgment data. |
static class | SSU2Payload.AddressBlockBlock containing IP address and port information. |
static class | SSU2Payload.BlockBase class for blocks to be transmitted. |
static class | SSU2Payload.DateTimeBlockBlock containing the current date and time. |
static class | SSU2Payload.FirstFragBlockSame format as I2NPBlock |
static class | SSU2Payload.FollowFragBlockFollow-on fragment block for SSU2 payload. |
static class | SSU2Payload.I2NPBlockBlock containing I2NP message data. |
static class | SSU2Payload.NewTokenBlockBlock containing a new session token. |
static class | SSU2Payload.OptionsBlockBlock containing session options. |
static class | SSU2Payload.PaddingBlockBlock containing padding data. |
static class | SSU2Payload.PathChallengeBlockPath challenge block for SSU2 payload. |
static class | SSU2Payload.PathResponseBlockPath response block for SSU2 payload. |
static interface | SSU2Payload.PayloadCallbackFor all callbacks, recommend throwing exceptions only from the handshake. |
static class | SSU2Payload.PeerTestBlockBlock containing peer test data. |
static class | SSU2Payload.RelayIntroBlockBlock containing relay introduction data. |
static class | SSU2Payload.RelayRequestBlockBlock containing relay request data. |
static class | SSU2Payload.RelayResponseBlockBlock containing relay response data. |
static class | SSU2Payload.RelayTagBlockBlock containing relay tag data. |
static class | SSU2Payload.RelayTagRequestBlockBlock containing relay tag request data. |
static class | SSU2Payload.RIBlockBlock containing router information data. |
static class | SSU2Payload.TerminationBlockBlock containing session termination data. |
| Modifier and Type | Field and Description |
|---|---|
static int | BLOCK_HEADER_SIZEBLOCK_HEADER_SIZE. |
static int | BLOCK_TERMINATIONBLOCK_TERMINATION. |
| Constructor and Description |
|---|
SSU2Payload() |
| Modifier and Type | Method and Description |
|---|---|
static int | processPayload(I2PAppContext ctx,
SSU2Payload.PayloadCallback cb,
byte[] payload,
int off,
int length,
boolean isHandshake,
RemoteHostId from)Incoming payload. |
static int | writePayload(byte[] payload,
int off,
List<SSU2Payload.Block> blocks) |
public static final int BLOCK_HEADER_SIZE
public static final int BLOCK_TERMINATION
public static int processPayload(I2PAppContext ctx, SSU2Payload.PayloadCallback cb, byte[] payload, int off, int length, boolean isHandshake, RemoteHostId from) throws IOException, DataFormatException, I2NPMessageException
isHandshake - true for Token Req, Retry, Sess Req, Sess Created; false for Sess Confirmedfrom - for path challenge/response only, may be nullIOException - on major errorsDataFormatException - on parsing of individual blocksI2NPMessageException - on parsing of I2NP blockpublic static int writePayload(byte[] payload,
int off,
List<SSU2Payload.Block> blocks)payload - writes to it starting at off