Provides a severity level (larger numbers are more severe) in association with
a client reporting abusive behavior to the router or the router reporting it
to the client
Receive an incoming connection (built from a received SYN)
Non-SYN packets with a zero SendStreamID may also be queued here so
that they don't get thrown away while the SYN packet before it is queued.
As this does not (yet) extend ServerSocketChannel it cannot be returned by StandardServerSocket.getChannel(),
until we implement an I2P SocketAddress class.
As this does not (yet) extend ServerSocketChannel it cannot be returned by StandardServerSocket.getChannel(),
until we implement an I2P SocketAddress class.
Send a notification to the client that their message (id specified) was accepted
for delivery (but not necessarily delivered)
Doesn't do anything if i2cp.messageReliability = "none"
If we're coming from the client subsystem itself, we already know whether
the target is definitely remote and as such don't need to recheck
ourselves, but if we aren't certain, we want it to check for us.
TODO should this use a queue, separate from the list of msgs pending an ack?
TODO bring back tail drop?
TODO priority queue? (we don't implement priorities in SSU now)
TODO backlog / pushback / block instead of dropping? Can't really block here.
Add a message to be sent down the tunnel, either sending it now (perhaps
coallesced with other pending messages) or after a brief pause (_flushFrequency).
Add a message to be sent down the tunnel, either sending it now (perhaps
coallesced with other pending messages) or after a brief pause (_flushFrequency).
Accrue the data in the current period as if the event took the specified amount of time
If value is always a constant, you should be using Frequency instead.
Deprecated.As of 0.8.1, this is a noop, as it just adds classes to the log manager
class list for no good reason. Logging in jobs is almost always
set explicitly rather than by class name.
add the peer info, returning true if it went in properly, false if
it was rejected (causes include peer ident already connected, or no
remote host info known
Pick a message we want to send and allocate it out of our window
High usage -
OutboundMessageFragments.getNextVolley() calls this 2nd, if finishMessages() returned > 0.
fortuna instance that tries to avoid blocking if at all possible by using separate
filled buffer segments rather than one buffer (and blocking when that buffer's data
has been eaten)
Note that this class is not fully Thread safe!
The following methods must be synchronized externally, they are not
synced here or in super():
addRandomByte(), addRandomBytes(), nextByte(), nextBytes(), seed()