All Classes

Class Description
A
A record payload (ip pointer).
AAAA
AAAA payload (an ipv6 pointer).
AbstractID3v2FrameData  
AbstractID3v2Tag  
AbuseReason
Defines the structure for why abuse was reported either by the client to the router or by the router to the client
AbuseSeverity
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
AcceptingChannel
As this does not (yet) extend ServerSocketChannel it cannot be returned by StandardServerSocket.getChannel(), until we implement an I2P SocketAddress class.
AccessCounter
Counts connection attempts and decides if specified thresholds have been breached.
AccessFilter
A filter for incoming connections which can be configured based on access list rules.
ACKBitfield
Generic means of SACK/NACK transmission for partially or fully received messages
ACKSender
Blocking thread that is given peers by the inboundFragment pool, sending out any outstanding ACKs.
ACKTimer
Send an empty message if the timer expires.
Action  
ActionData  
ActionEvent  
ActionList  
ActionListener  
ActionListener  
ActionRequest  
ActionResponse  
AddressBean  
AddressBook
An address book for storing human readable names mapped to base64 i2p destinations.
AddressbookBean  
AddressByNameSorter  
Addresses
Methods to get the local addresses, and other IP utilities
AdvancedSettingsHandler  
Advertiser  
AESEngine
Dummy wrapper for AES cipher operation.
Aggregates Deprecated.
This class is deprecated.
Aggregator  
ALabel  
AliasedTunnelPool
A tunnel pool with its own settings and Destination, but uses another pool for its tunnels.
AllowedValue  
AllowedValueList  
AllowedValueRange  
AMDCPUInfo
An interface for classes that provide lowlevel information about AMD CPU's
AMDInfoImpl
Moved out of CPUID.java Ref: http://en.wikipedia.org/wiki/List_of_AMD_CPU_microarchitectures
Analysis  
App  
AppletContext  
ArcDef
Class to represent single archive definition within the RRD.
Archive
Class to represent single RRD archive in a RRD with its internal state.
Archive
Instances of this class model an archive section of an RRD file.
ArcState
Class to represent internal RRD archive state for a single datasource.
Area  
Args  
Argument  
ArgumentData  
ArgumentList  
ArraySet<E>
A small, fast Set with a maximum size, backed by a fixed-size array.
ArraySet.SetFullException  
ArrayUtils
ArrayUtils contains some methods that you can call to find out the most efficient increments by which to grow arrays.
AsyncFortunaStandalone
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()
Attachment  
Attribute  
AttributeList  
AuthenticateHandler  
AuthToken  
Axis  
BackgroundChecker
Check for new mail periodically
BadLocationException  
BandwidthEstimator
A Westwood bandwidth estimator
BandwidthLimitsMessage
Tell the other side the limits
Banlist
Routers are banlisted only if none of our transports can talk to them or their signed router info is completely screwy.
Banlist.Entry  
BanlistRenderer
Moved from Banlist.java
BarcodeFormat
Enumerates barcode formats known to this package.
Base32
Encodes and decodes to and from Base32 notation.
Base32
Very minimal Base32 encoder.
Base64  
Base64
Encodes and decodes to and from Base64 notation.
Base64
Very minimal Base64 encoder.
BaseBean
Holds methods common to several Beans.
BaseException  
BasePerms  
BasePRNGStandalone
An abstract class to facilitate implementing PRNG algorithms.
BasicServlet
Based on DefaultServlet from Jetty 6.1.26, heavily simplified and modified to remove all dependencies on Jetty libs.
BasicServlet.HttpContent
from Jetty HttpContent.java
BatchedPreprocessor
Batching preprocessor that will briefly delay the sending of a message if it doesn't fill up a full tunnel message, in which case it queues up an additional flush task.
BatchedRouterPreprocessor
Honor the 'batchFrequency' tunnel pool setting or the 'router.batchFrequency' router config setting, and track fragmentation.
BCrypt
BCrypt implements OpenBSD-style Blowfish password hashing using the scheme described in "A Future-Adaptable Password Scheme" by Niels Provos and David Mazieres.
BDecoder
Decodes a bencoded stream to BEValues.
BEncoder  
BEValue
Holds different types that a bencoded byte array can represent.
BigIntegerFieldElement
A particular element of the field \Z/(2^255-19).
BigIntegerLittleEndianEncoding  
BigIntegerScalarOps  
BitArray
A simple, fast array of bits, represented compactly by an array of ints internally.
BitField
Container of a byte array representing set and unset bits.
BitMatrix
Represents a 2D matrix of bits.
BlindCache
Cache of blinding data.
BlindData
Cache data for Blinding EdDSA keys.
Blinding
Utilities for Blinding EdDSA keys.
BlindingInfoMessage
Advise the router that the endpoint is blinded.
BlockFile
On-disk format: Magic number (6 bytes) Version major/minor (2 bytes) file length (long) free list start (unsigned int) is mounted (unsigned short) 0 = no, 1 = yes span size (unsigned short) block size (unsigned int) Metaindex skiplist is on page 2 Pages are 1 KB and are numbered starting from 1.
BlockfileNamingService
A naming service using the net.metanotion BlockFile database.
Blocklist
Manage blocking by IP address, in a manner similar to the Banlist, which blocks by router hash.
BlocklistEntries
One Blocklist.
BlockPair  
BloomFilterIVValidator
Manage the IV validation for all of the router's tunnels by way of a big decaying bloom filter.
BloomSHA1
A Bloom filter for sets of SHA1 digests.
BloomSHA1.FilterKey
Store the (opaque) bloom filter offsets for reuse.
BOB Deprecated.
Please port applications to SAMv3
BootCommSystemJob
This actually boots almost everything
BootNetworkDbJob
start up the network database
BootPeerManagerJob
start up the peer manager
BorderFactory  
BorderLayout  
BoxLayout  
BSkipLevels<K extends Comparable<? super K>,​V>
On-disk format:
BSkipList<K extends Comparable<? super K>,​V>
On-disk format:
BSkipSpan<K extends Comparable<? super K>,​V>
On-disk format:
Buffer
Base interface for all Buffers.
BufferedStatLog
Note - if no filter is defined in stat.logFilters at startup, this class will not be instantiated - see StatManager.
BufferHolder  
BufferTools  
BuildExecutor
Single threaded controller of the tunnel creation process, spanning all tunnel pools.
BuildHandler
Handle the received tunnel build message requests and replies, including sending responses to requests, updating the lists of our tunnels and participating tunnels, and updating stats.
BuildMessageGenerator
Fill in the encrypted BuildRequestRecords in a TunnelBuildMessage
BuildMessageProcessor
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.
BuildReplyHandler
Decrypt the layers of a tunnel build reply message, determining whether the individual hops agreed to participate in the tunnel, or if not, why not.
BuildRequestor
Methods for creating Tunnel Build Messages, i.e.
BuildRequestRecord
As of 0.9.48, supports two formats.
BuildResponseRecord
Class that creates an encrypted tunnel build message record.
BuildTime
Get the build date as set in i2p.jar, and reasonable min and max values for the current time, to be used as sanity checks.
BuildTrustedLinksJob
For future restricted routes.
BWLimits
Connect via I2CP and ask the router the bandwidth limits.
BWLimitsMessageHandler
Handle I2CP BW replies from the router
ByteArray
Wrap up an array of bytes so that they can be compared and placed in hashes, maps, and the like.
ByteArrayStream
OutputStream to InputStream adapter.
ByteBufferBackend
A backend that store and provides access to data using a ByteBuffer, using java internal methods for long, integer and others types.
ByteBufferUtils  
ByteCache
Cache the objects frequently used to reduce memory churn.
ByteMatrix
JAVAPORT: The original code was a 2D array of ints, but since it only ever gets assigned -1, 0, and 1, I'm going to use less memory and go with bytes.
CachedIteratorArrayList<E>
ArrayList that uses a single iterator.
CachedIteratorCollection<E>
Extend java.util.AbstractCollection to create a collection that can be iterated over without creation of a new object
CapacityCalculator
Estimate how many of our tunnels the peer can join per hour.
CDef  
CDef  
CDPQEntry
For CoDelPriorityQueue
CDPStatusBlock
Instances of this class model the consolidation data point status from an RRD file.
CDQEntry
For CoDelQueue
CertHelper
Dump out our local SSL certs, if any
Certificate
Defines a certificate that can be attached to various I2P structures, such as RouterIdentity and Destination, allowing routers and clients to help manage denial of service attacks and the network utilization.
CertUtil
Java X.509 certificate utilities, consolidated from various places.
ChaCha20
ChaCha20, wrapper around Noise ChaChaCore.
ChaChaCore
Implementation of the ChaCha20 core hash transformation.
ChaChaPolyCipherState
Implements the ChaChaPoly cipher for Noise.
CharacterSetECI
Encapsulates a Character Set ECI, according to "Extended Channel Interpretations" 5.3.1.1 of ISO 18004.
Checker
Controls one or more types of updates.
ChecksumException
Thrown when a barcode was successfully detected and decoded, but was not returned because its checksum feature failed.
CHMCache
A simplistic cache using a ConcurrentHashMap.
CipherState
Interface to an authenticated cipher for use in the Noise protocol.
CipherStatePair
Class that contains a pair of CipherState objects.
ClientApp
If a class started via clients.config implements this interface, it will be used to manage the client, instead of starting with main() Clients implementing this interface MUST provide the following constructor: public MyClientApp(I2PAppContext context, ClientAppManager listener, String[] args) {...} All parameters are non-null.
ClientAppConfig
Contains a really simple ClientApp "structure" and some static methods so they can be used both by LoadClientAppsJob and by the configuration page in the router console.
ClientAppManager
Notify the router of events, and provide methods for client apps to find each other.
ClientAppManagerImpl
A simple ClientAppManager that supports register/unregister only, so that client apps may find each other in AppContext.
ClientAppState
Status of a client application.
ClientConnectionRunner
Bridge the router and the client - managing state for a client.
ClientListenerRunner
Listen for connections on the specified port, and toss them onto the client manager's set of connections once they are established.
ClientManager
Coordinate connections and various tasks
ClientManagerFacade
Manage all interactions with clients
ClientManagerFacadeImpl
Base impl of the client facade
ClientMessage
Wrap a message either destined for a local client or received from one.
ClientMessageEventListener
Receive events from the client and handle them accordingly (updating the runner when necessary)
ClientMessagePool
Manage all of the inbound and outbound client messages maintained by the router.
ClientPeerSelector
Pick peers randomly out of the fast pool, and put them into tunnels ordered by XOR distance from a random key.
ClientTunnelSettings
Wrap up the client settings specifying their tunnel criteria
ClientWriterRunner
Copied from net.i2p.router.client We need a single thread that writes so we don't have issues with the Piped Streams used in InternalSocket.
ClientWriterRunner
Async writer class so that if a client app hangs, they wont take down the whole router with them (since otherwise the JobQueue would block until the client reads from their i2cp socket, causing all sorts of bad things to happen) For external I2CP connections only.
Clipboard  
Clock
Alternate location for determining the time which takes into account an offset.
Clock.ClockUpdateListener  
ClosedDatabaseException
Signals that the underlying database has been closed.
CloveSet
Wrap up the data contained in a GarlicMessage after being decrypted
CNAME
CNAME payload (pointer to another domain / address).
CoalesceStatsEvent
Coalesce the stats framework every minute
CodedIconRendererServlet
Serve plugin icons, at /Plugins/pluginicon?plugin=foo
CoDelBlockingQueue<E extends CDQEntry>
CoDel implementation of Active Queue Management.
CoDelPriorityBlockingQueue<E extends CDPQEntry>
CoDel implementation of Active Queue Management.
Color  
CommandLine
Simple command line access to various utilities.
CommandLine
Simple command line access to various utilities.
CommandLine
Simple command line access to various utilities.
CommandLine
Simple command line access to various utilities.
Comment
Store a single comment and/or rating.
CommentSet
Store comments.
CommentText  
CommSystemFacade
Manages the communication subsystem between peers, including connections, listeners, transports, connection keys, etc.
CommSystemFacade.Status
Since the codes may change.
CommSystemFacadeImpl  
CompleteListener
Callback for Snark events.
Component  
ConcurrentHashSet<E>
Implement on top of a ConcurrentHashMap with a dummy value.
Config
Warning - static - not for use by multiple applications or prefixes
ConfigAdvancedHandler
Handler to deal with form submissions from the advanced config form and act upon the values.
ConfigAdvancedHelper  
ConfigBean  
ConfigClientsHandler
Saves changes to clients.config or webapps.config
ConfigClientsHelper  
ConfigFamilyHandler  
ConfigFamilyHelper  
ConfigFile
Simple config file handler.
ConfigHomeHandler
Simple home page configuration.
ConfigKeyringHandler
Support additions via B64 Destkey, B64 Desthash, blahblah.i2p, and others supported by ConvertToHash
ConfigKeyringHelper  
ConfigLoggingHandler
Handler to deal with form submissions from the logging config form and act upon the values.
ConfigLoggingHelper  
ConfigNavHelper
Render the configuration menu at the top of all the config pages.
ConfigNetHandler
Handler to deal with form submissions from the main config form and act upon the values.
ConfigNetHelper
Used for both /config and /confignet
ConfigParser
Utility class providing methods to parse and write files in config file format, and subscription file format.
ConfigPeerHandler  
ConfigPeerHelper  
ConfigReseedHandler  
ConfigReseedHelper  
ConfigRestartBean
simple helper to control restarts/shutdowns in the left hand nav
ConfigServiceHandler
Handler to deal with form submissions from the service config form and act upon the values.
ConfigStatsHandler
Handler to deal with form submissions from the stats config form and act upon the values.
ConfigStatsHelper  
ConfigSummaryHandler
Simple sidebar configuration.
ConfigTunnelsHandler
Handler to deal with form submissions from the tunnel config form and act upon the values.
ConfigTunnelsHelper  
ConfigUIHandler
set the theme
ConfigUIHelper
Helper for /configui
ConfigUIHelper
Standalone (app context) only.
ConfigUpdateHandler  
ConfigUpdateHelper  
ConfigurationManager
Manage the configuration of I2PControl.
ConnectChecker
Tools to check transport compatibility.
Connection
Maintain the state controlling a streaming connection between two destinations.
ConnectionAcceptor
Accepts connections on a I2PServerSocket and routes them to PeerAcceptors.
ConnectionDataReceiver
Receive data from the MessageOutputStream, build a packet, and send it through a connection.
ConnectionHandler
Receive new connection attempts Use a bounded queue to limit the damage from SYN floods, router overload, or a slow client
ConnectionManager
Coordinate all of the connections for a single local destination.
ConnectionManager.PingNotifier
The callback interface for a pong.
ConnectionOptions
Define the current options for the con (and allow custom tweaking midstream) TODO many of these are not per-connection options, and should be migrated somewhere so they aren't copied for every connection
ConnectionPacketHandler
Receive a packet for a particular connection - placing the data onto the queue, marking packets as acked, updating various fields, etc.
ConnThrottler
Count how often we have received an incoming connection This offers basic DOS protection but is not a complete solution.
ConnThrottler
Count how often something happens with a particular peer and all peers.
ConsolePasswordManager
Manage both plaintext and salted/hashed password storage in router.config.
ConsoleUpdateManager
The central resource coordinating updates.
ConsolFun
Enumeration of available consolidation functions.
ConsolidationFunctionType
Class ConsolidationFunctionType
ConstantArea  
ConstantLine  
Constants  
Constants  
ContainerHelpers  
ContentHelper  
ContextHelper  
Control  
ControlPoint  
ControlRequest  
ControlResponse  
ConvertToHash
Convert any kind of destination String to a hash Supported: Base64 dest Base64 dest.i2p Base64 Hash Base64 Hash.i2p Base32 Hash Base32 desthash.b32.i2p example.i2p
CoordinatorListener
Callback used when some peer changes state.
Copy
This class is used by the installer to copy files.
CoreVersion
Expose a version string.
CountingInputStream
An InputStream that implements ReadCounter.
CountingOutputStream
An OutputStream that counts how many bytes are written and returns the count via getWritten().
Country
Represents a country.
CPUID
A class for retrieveing details about the CPU using the CPUID assembly instruction.
CPUID.CPUIDResult
A class that can (amongst other things I assume) represent the state of the different CPU registers after a call to the CPUID assembly method
CPUIDCPUInfo
Moved out of CPUID.java Ref: http://en.wikipedia.org/wiki/CPUID
CPUInfo
An interface for classes that provide lowlevel information about CPU's
CreateLeaseSet2Message
Like CreateLeaseSetMessage, but supports both old and new LeaseSet types, including LS2, Meta, and Encrypted.
CreateLeaseSetMessage
Defines the message a client sends to a router when authorizing the LeaseSet
CreateRouterInfoJob
Warning - misnamed.
CreateSessionJob
Given an established connection, walk through the process of establishing the lease set.
CreateSessionMessage
Defines the message a client sends to a router when establishing a new session.
CRLEntry
One CRL.
CryptixAESEngine
Wrapper for AES cypher operation using Cryptix's Rijndael implementation.
CryptixAESKeyCache
Cache the objects used in CryptixRijndael_Algorithm.makeKey to reduce memory churn.
CryptixAESKeyCache.KeyCacheEntry
all the data alloc'ed in a makeKey call
CryptixRijndael_Algorithm
Rijndael --pronounced Reindaal-- is a variable block-size (128-, 192- and 256-bit), variable key-size (128-, 192- and 256-bit) symmetric cipher.
CryptoCheck
Moved from CryptixAESEngine and net.i2p.router.tasks.CryptoChecker.
CryptoChecker
Warn about unavailable crypto to router and wrapper logs
CryptoConstants
Prime for ElGamal from http://tools.ietf.org/html/rfc3526 Primes for DSA: Generated by TheCrypto http://article.gmane.org/gmane.comp.security.invisiblenet.iip.devel/343 See also: ECConstants, RSAConstants
CSSHelper
Copied and modded from I2PTunnel IndexBean (GPL)
CSSHelper.StringFormatter
Capitalize first letter of each word of string https://www.javatpoint.com/java-program-to-capitalize-each-word-in-string
CubicSplineInterpolator
Class used to interpolate datasource values from the collection of (timestamp, values) points using natural cubic spline interpolation.
Cursor  
Curve
A twisted Edwards curve.
Curve25519
Implementation of the Curve25519 elliptic curve algorithm.
Curve25519DHState
Implementation of the Curve25519 algorithm for the Noise protocol.
Daemon
Main class of addressbook.
DaemonThread
A thread that waits five minutes, then runs the addressbook daemon.
Data
Generic payload class.
DatabaseEntry
Base implementation of common methods for the two data structures that are stored in the netDb, i.e.
DatabaseInfo
Encapsulates metadata about the GeoIP database.
DatabaseLookupMessage
Defines the message a router sends to another router to search for a key in the network database.
DatabaseLookupMessage.Type  
DatabaseReader
Modified and simplified for I2P
DatabaseReader.Builder
Constructs a Builder for the DatabaseReader.
DatabaseSearchReplyMessage
Defines the message a router sends to another router in response to a search (DatabaseFindNearest or DatabaseLookup) when it doesn't have the value, specifying what routers it would search.
DatabaseStoreMessage
Defines the message a router sends to another router to test the network database reachability, as well as the reply message sent back.
DataChunk
Models a chunk of result data from an RRDatabase.
DataFormatException
Thrown when the data was not available to read or write a DataStructure
DataHelper
Defines some simple IO routines for dealing with marshalling data structures
DataHolder  
DataImporter
An abstract class to import data from external source.
DataLoader
Callback used to fetch data
DataMessage
Defines a message containing arbitrary bytes of data This is what goes in a GarlicClove.
DataProcessor
Class which should be used for all calculations based on the data fetched from RRD files.
Datasource
Class to represent single datasource within RRD.
DataSource
Instances of this class model a data source in an RRD file.
DataSourceType
Class DataSourceType
DataStore  
DataStructure
Defines the class as a standard object with particular bit representation, exposing methods to read and write that representation.
DataStructureImpl
Base implementation of all data structures
Date  
DateAndFlags
A six-byte Date and 2 bytes of flags, since a Date won't encroach on the top two bytes until the year 10889.
DBHistory
History of NetDb related activities (lookups, replies, stores, etc)
DCCClientManager
Start, track, and expire the I2PTunnelDCCClients.
DCCHelper
Hooks to create and maintain DCC client and server tunnels
Debug  
DecayingBloomFilter
Series of bloom filters which decay over time, allowing their continual use for time sensitive data.
DecayingHashSet
Double buffered hash set.
Decoder  
Decoder.Type  
DecodingException  
DecodingOutputStream
Buffering decoder, with output to a Writer.
Def  
Def  
DefaultHostnameVerifier
Default HostnameVerifier implementation.
DefaultIdnaTransformator  
DefinitionParser
Utility class for parsing filter definitions
DelayedDeleter
Queue UIDLs for later deletion.
DelegatingDnssecRR
DS (Delegation Signer) record payload.
DelegatingDnssecRR.SharedData  
Delete
This class is used by the installer to delete one or more specified files.
DeliveryInstructions
Contains the delivery instructions for garlic cloves.
DeliveryStatusMessage
Defines the message sent back in reply to a message when requested, containing the private ack id.
Description  
DeserializationException
DeserializationException explains how and where the problem occurs in the source JSON text during deserialization.
DeserializationException.Problems
The kinds of exceptions that can trigger a DeserializationException.
DesktopguiTranslator  
Destination
Defines an end point in the I2P network.
DestLookupMessage
Request the router look up the dest for a hash
DestReplyMessage
Response to DestLookupMessage.
DestReplyMessageHandler
Handle I2CP dest replies from the router
Destroyable
Interface for objects that implement destroying.
DestroySessionMessage
Defines the message a client sends to a router when destroying existing session.
DestTracker
Tracks the connection attempts for a given remote Destination
DetectedIP
Class returned by a FredPluginIPDetector.
Device  
DeviceChangeListener  
DeviceData
I2P added multiple location support
DeviceList  
DevSU3UpdateChecker
Check for an updated su3 version.
DevSU3UpdateHandler
Handles the request to update the router by firing off an EepGet call to download the latest su3 file and display the status.
DevSU3UpdateRunner
Eepget the .su3 file to the temp dir, then notify.
DHSessionKeyBuilder
Generate a new session key through a diffie hellman exchange.
DHSessionKeyBuilder.Factory  
DHSessionKeyBuilder.InvalidPublicParameterException  
DHSessionKeyBuilder.PrecalcRunner
Try to keep DH pairs at the ready.
DHState
Interface to a Diffie-Hellman algorithm for the Noise protocol.
DHT
Stub for KRPC
DHTNodes
All the nodes we know about, stored as a mapping from node ID to a Destination and Port.
DHTTracker
The tracker stores peers, i.e.
Dimension  
DirKeyRing
Simple storage of each cert in a separate file in a directory.
DisconnectMessage
Defines the message a client sends to a router when destroying existing session.
DisconnectMessageHandler
Handle I2CP disconnect messages from the router
Dispatcher
Dispatcher for JSON-RPC 2.0 requests and notifications.
Disposer  
DLV
DLV record payload.
DNAME
A DNAME resource record.
DNSKEY
DNSKEY record payload.
DnsLabel
A DNS label is an individual component of a DNS name.
DnsLabel.LabelToLongException  
DnsMessage
A DNS message as defined by RFC 1035.
DnsMessage.Builder  
DnsMessage.OPCODE
Symbolic DNS Opcode values.
DnsMessage.RESPONSE_CODE
Possible DNS response codes.
DnsName
A DNS name, also called "domain name".
DNSOverHTTPS
Simple implemetation of DNS over HTTPS.
DNSOverHTTPS.Type  
DnssecConstants  
DnssecConstants.DigestAlgorithm
DNSSEC Digest Algorithms.
DnssecConstants.SignatureAlgorithm
DNSSEC Signature Algorithms.
DoCMDS
Simplistic command parser for BOB
DownSampler
A class that implement a downsampler, used to reduce the number of point to display.
DownSampler.DataSet  
Draft
Holds a draft message and reference to attachments, if any Differences from Mail: - Never multipart, body is always text/plain UTF-8 - Attachments are just headers containing name, type, encoding, and path to file - Bcc is a header
DS
DS (Delegation Signer) record payload.
DSAEngine
Sign and verify using DSA-SHA1 and other signature algorithms.
DsDef
Class to represent single data source definition within the RRD.
DsType
Enumeration of available datasource types.
Dummy
Exists only to enable package.html to be included in javadoc.
Dummy
Exists only to enable package.html to be included in javadoc.
DummyClientManagerFacade
Manage all interactions with clients
DummyHandler
Dummy to lock up the updates for a period of time
DummyNamingService
A Dummy naming service that can only handle base64 and b32 destinations.
DummyNetworkDatabaseFacade  
DummyOutputStream
Write to nowhere
DummyPeerManagerFacade
Manage peer references and keep them up to date so that when asked for peers, it can provide appropriate peers according to the criteria provided.
DummyThrottle
Since the TimedWeightedPriorityMessageQueue.add() was disabled by jrandom in UDPTransport.java on 2006-02-19, and the choke/unchoke was disabled at the same time, all of TWPMQ is pointless, so just do this for now.
DummyTunnelManagerFacade
Build and maintain tunnels throughout the network.
DummyValidator
accept everything
ECConstants
Constants for elliptic curves, from NIST FIPS 186-4 (2013) / ANSI X9.62
EchoHandler  
ECIESAEADEngine
Handles the actual ECIES+AEAD encryption and decryption scenarios using the supplied keys and data.
ECUtil
Used by KeyGenerator.getSigningPublicKey() Modified from http://stackoverflow.com/questions/15727147/scalar-multiplication-of-point-over-elliptic-curve Apparently public domain.
Ed25519FieldElement
Class to represent a field element of the finite field $p = 2^{255} - 19$ elements.
Ed25519LittleEndianEncoding
Helper class for encoding/decoding from/to the 32 byte representation.
Ed25519ScalarOps
Class for reducing a huge integer modulo the group order q and doing a combined multiply plus add plus reduce operation.
EdDSABlinding
Utilities for Blinding EdDSA keys.
EdDSAEngine
Signing and verification for EdDSA.
EdDSAGenParameterSpec
Implementation of AlgorithmParameterSpec that holds the name of a named EdDSA curve specification.
EdDSAKey
Common interface for all EdDSA keys.
EdDSANamedCurveSpec
EdDSA Curve specification that can also be referred to by name.
EdDSANamedCurveTable
The named EdDSA curves.
EdDSAParameterSpec
Parameter specification for an EdDSA algorithm.
EdDSAPrivateKey
An EdDSA private key.
EdDSAPrivateKeySpec  
EdDSAPublicKey
An EdDSA public key.
EdDSAPublicKeySpec  
EditBean
Ugly little accessor for the edit page Warning - This class is not part of the i2ptunnel API, it has been moved from the jar to the war.
Edns
EDNS - Extension Mechanism for DNS.
Edns.Builder  
Edns.OptionCode
The EDNS option code.
EdnsOption  
EepGet
EepGet [-p 127.0.0.1:4444] [-n #retries] [-o outputFile] [-m markSize lineLen] url
EepGet.AUTH_MODE  
EepGet.StatusListener
Callback interface
EepGetAndAddNamingService Deprecated.
use HostsTxtNamingService.put()
EepGetNamingService
A network-based naming service using HTTP, with in-memory caching.
EepHead
This is a quick hack to get a working EepHead, primarily for the following usage:
EightBit
Decode only.
ElementsNames
The elements of the graph.
Elg2KeyFactory
Elligator2 for X25519 keys.
Elg2KeyPair
X25519 keys, with the public key Elligator2 encoding pre-calculated
ElGamalAESEngine
Handles the actual ElGamal+AES encryption and decryption scenarios using the supplied keys and data.
ElGamalEngine
Wrapper for ElGamal encryption/signature schemes.
ElGamalGenParameterSpec  
ElGamalKey  
ElGamalKeySpec  
ElGamalParameterSpec
Copied from org.bouncycastle.jce.spec This can't actually be passed to the BC provider, we would have to use reflection to create a "real" org.bouncycasle.jce.spec.ElGamalParameterSpec.
ElGamalPrivateKey  
ElGamalPrivateKeyImpl  
ElGamalPrivateKeySpec
This class specifies an ElGamal private key with its associated parameters.
ElGamalPublicKey  
ElGamalPublicKeyImpl  
ElGamalPublicKeySpec
This class specifies an ElGamal public key with its associated parameters.
ElGamalSigEngine
ElG signatures with SHA-256 ref: https://en.wikipedia.org/wiki/ElGamal_signature_scheme
Elligator2
Elligator2 for X25519 keys.
EmptyProperties
Immutable OrderedProperties, to reduce object churn in LS2 where it's expected to be empty.
EncAlgo
Base encryption algorithm type
EncodedText  
EncodeHintType
These are a set of hints that you may pass to Writers to specify their behavior.
Encoder  
Encoding
Interface to encode/decode content transfer encodings like quoted-printable, base64 etc.
Encoding
Common interface for all $(b-1)$-bit encodings of elements of EdDSA finite fields.
EncodingException
Converted from Exception to IOException in 0.9.33
EncodingFactory
Manager class to handle content transfer encodings.
EncryptedBuildRecord
ElGamal-encrypted request or response.
EncryptedLeaseSet
Use getSigningKey() / setSigningKey() (revocation key in super) for the blinded key.
EncType
Defines the properties for various encryption types that I2P supports or may someday support.
EntropyHarvester
Allow various components with some entropy to feed that entropy back into some PRNG.
EOFOnMatchInputStream
A stream that returns EOF when the input matches the bytes provided.
Epoch
Small swing-based utility to convert timestamps (seconds since epoch) to readable dates and vice versa.
ErrorCorrectionLevel
See ISO 18004:2006, 6.5.1.
ErrorServlet
Common servlet for errors This is intended for webapps and local plugins.
EscapeHTMLOutputStream
Escape HTML on the fly.
EscapeHTMLWriter
Escape HTML on the fly.
EstablishBase
Inbound NTCP 2 only.
EstablishBase.State  
EstablishmentManager
Coordinate the establishment of new sessions - both inbound and outbound.
EstablishState
Handle the establishment
EventDispatcher
Event dispatching interface.
EventDispatcherImpl
An implementation of the EventDispatcher interface.
EventListener  
EventLog
Simple event logger for occasional events, with caching for reads.
EventLogHelper
/events.jsp
EventPumper
The main NTCP NIO thread.
EventReceiver
An implementation of the EventDispatcher interface for receiving events via in-line notifyEvent() only.
Exec
This class can be used by the installer to execute shell commands.
Executor
Deprecated - used only by SimpleTimer
ExpiredAuthTokenException  
ExpireJob
This runs twice for each tunnel.
ExpireLeasesJob
Periodically search through all leases to find expired ones, failing those keys and firing up a new search for each (in case we want it later, might as well preemptively fetch it)
ExpireRoutersJob
Go through the routing table pick routers that are out of date, but don't expire routers we're actively connected to.
ExplicitFilterDefinitionElement
A filter definition element that includes a single, explicitly defined remote destination
ExploratoryPeerSelector
Pick peers randomly out of the not-failing pool, and put them into a tunnel ordered by XOR distance from a random key.
ExploreJob
Search for a particular key iteratively until we either find a value, we run out of peers, or the bucket the key belongs in has sufficient values in it.
ExploreKeySelectorJob Deprecated.
unused, see comments in KNDF
ExtensionHandler
REF: BEP 10 Extension Protocol
ExternalTrayManager
When started before the router, e.g.
FakeALabel  
FamilyKeyCrypto
Utilities for creating, storing, retrieving the signing keys for the netdb family feature
FastI2NPMessageImpl
Ignore, but save, the SHA-256 checksum in the full 16-byte header when read in.
FetchAndAdd
A cancellable torrent file downloader.
FetchData
Class used to represent data fetched from the RRD.
FetchRequest
Class to represent fetch request.
Field
An EdDSA finite field.
FieldElement
Note: concrete subclasses must implement hashCode() and equals()
FIFOBandwidthLimiter
Concurrent plan: It's difficult to get rid of the locks on _pendingInboundRequests since locked_satisyInboundAvailable() leaves Requests on the head of the queue.
FIFOBandwidthLimiter.CompleteListener  
FIFOBandwidthLimiter.Request
A bandwidth request, either inbound or outbound.
FIFOBandwidthRefiller
Thread that runs several times a second to "give" bandwidth to FIFOBandwidthLimiter.
FileBuffer
File implementation of Buffer.
FileDumpHelper
Dump info on jars and wars
FileFilterDefinitionElement
An element of filter definition that reads hashes of remote destinations from a file.
FileLogWriter
File-based log writer thread that pulls log records from the LogManager, writes them to the current logfile, and rotates the logs as necessary.
FilenameUtil
File name encoding methods
FileSuffixFilter
A FileFilter that accepts regular files with a suffix and optionally a prefix, case-insensitive.
FileUtil
General helper methods for messing with files These are static methods that do NOT convert arguments to absolute paths for a particular context and directory.
FileUtil  
FileWrapper  
FilterDefinition
Definition of an access filter.
FilterDefinitionElement
Base class for elements found in filter definition files
FilterFactory
Factory for incoming connection filters.
FixCRLFOutputStream
Replace plain \n with \r\n on the fly.
FixWinPaths
This class is used by the installer in Windows to process the wrapper.config file.
FloodfillDatabaseLookupMessageHandler
Build a HandleDatabaseLookupMessageJob whenever a DatabaseLookupMessage arrives
FloodfillDatabaseStoreMessageHandler
Create a HandleDatabaseStoreMessageJob whenever a DatabaseStoreMessage arrives
FloodfillMonitorJob
Simple job to monitor the floodfill pool.
FloodfillNetworkDatabaseFacade
The network database
FloodfillPeerSelector
This is where we implement semi-Kademlia with the floodfills, by selecting floodfills closest to a given key for searches and stores.
FloodfillRouterInfoFloodJob
Job to flood nearby floodfill routers with our RI.
FloodfillStoreJob
This extends StoreJob to fire off a FloodfillVerifyStoreJob after success.
FloodfillVerifyStoreJob
Send a netDb lookup to a floodfill peer - If it is found, great, but if they reply back saying they don't know it, queue up a store of the key to a random floodfill peer again (via FloodfillStoreJob)
FloodOnlyLookupMatchJob  
FloodOnlyLookupSelector
Mostly replaced by IterativeLookupSelector
FloodOnlyLookupTimeoutJob
This is the timeout for the whole search.
FloodOnlySearchJob
Uunused directly, replaced by IterativeSearchJob, but still extended by SingleSearchJob.
FloodSearchJob
Try sending a search to some floodfill peers, but if we don't get a successful match within half the allowed lookup time, give up and start querying through the normal (kademlia) channels.
FloodThrottler
Count how often we have recently flooded a key This offers basic DOS protection but is not a complete solution.
Folder<O>
Folder object manages a array Object[] to support paging and sorting.
Folder.SortOrder  
FormatException
Thrown when a barcode was successfully detected, but some aspect of the content did not conform to the barcode's format rules.
FormatInformation
Encapsulates a QR Code's format information, including the data mask used and error correction level.
FormHandler
Simple form handler base class - does not depend on servlets or jsp, but instead the subclasses are populated with javabean properties.
FortunaRandomSource
Wrapper around GNU-Crypto's Fortuna PRNG.
FortunaStandalone
The Fortuna continuously-seeded pseudo-random number generator.
FortunaStandalone.Generator
The Fortuna generator function.
ForwardPort
A public Internet Protocol port on the node which needs to be forwarded if the node is NATed.
ForwardPortCallback
Callback called by port forwarding plugins to indicate success or failure.
ForwardPortStatus  
FragmentedMessage
Gather fragments of I2NPMessages at a tunnel endpoint, making them available for reading when complete.
FragmentHandler
Handle fragments at the endpoint of a tunnel, peeling off fully completed I2NPMessages when they arrive, and dropping fragments if they take too long to arrive.
FragmentHandler.DefragmentedReceiver
Receive messages out of the tunnel endpoint.
FreeListBlock
On-disk format:
Frequency
Manage the calculation of a moving average event frequency over a certain period.
FrequencyStat
coordinate an event frequency over various periods
GarlicClove
Contains one deliverable message encrypted to a router along with instructions and a certificate 'paying for' the delivery.
GarlicConfig
Define the contents of a garlic chunk that contains 1 or more sub garlics.
GarlicMessage
Defines the wrapped garlic message
GarlicMessageBuilder
Build garlic messages based on a GarlicConfig
GarlicMessageHandler
HandlerJobBuilder to build jobs to handle GarlicMessages This is the handler for garlic message not received down a tunnel, which is the case for floodfills receiving netdb messages.
GarlicMessageParser
Read a GarlicMessage, decrypt it, and return the resulting CloveSet.
GarlicMessageReceiver
Decrypt a garlic message and pass off any valid cloves to the configured receiver to dispatch as they choose.
GarlicMessageReceiver.CloveReceiver  
GeneralHelper
General helper functions used by all UIs.
GenericGF
This class contains utility methods for performing mathematical operations over the Galois Fields.
GenericGFPoly
Represents a polynomial whose coefficients are elements of a GF.
GeoIP
Manage geoip lookup in a file with the Tor geoip format.
GeoIPv6
Generate compressed geoipv6.dat.gz file, and lookup entries in it.
GetBandwidthLimitsMessage
Request the router tells us the current bw limits
GetBidsJob
Retrieve a set of bids for a particular outbound message, and if any are found that meet the message's requirements, register the message as in process and pass it on to the transport for processing
GetDateMessage
Request the other side to send us what they think the current time is.
Getopt
This is a Java port of GNU getopt, a class for parsing command line arguments passed to programs.
GetRateHandler  
GettextResource
This class implements the main GNU libintl functions in Java.
GracefulShutdown
Simple thread that sits and waits forever, managing the graceful shutdown "process" (describing it would take more text than just reading the code...)
GraphConstants
Basic graph defaults
GraphHelper
/graphs.jsp, including form, and /graph.jsp
GroupElement
A point $(x,y)$ on an EdDSA curve.
GroupElement.Representation
Available representations for a group element.
GrowingArrayUtils
A helper class that aims to provide comparable growth performance to ArrayList, but on primitive arrays.
GunzipOutputStream
Gunzip implementation per RFC 1952, reusing java's standard CRC32 and Inflater and InflaterOutputStream implementations.
GzipFileBuffer
Gzip File implementation of Buffer.
HandleDatabaseLookupMessageJob
Handle a lookup for a key received from a remote peer.
HandleFloodfillDatabaseLookupMessageJob
Handle a lookup for a key received from a remote peer.
HandleFloodfillDatabaseStoreMessageJob
Receive DatabaseStoreMessage data and store it in the local net db
HandleGarlicMessageJob
Unencrypt a garlic message and handle each of the cloves - locally destined messages are tossed into the inbound network message pool so they're handled as if they arrived locally.
Handler
Something that can be stopped by the SAMBridge.
HandlerImpl
Base class for handling I2CP messages
HandlerJobBuilder
Defines a class that builds jobs to handle a particular message - these builders are registered with the InNetMessagePool for various I2NP message types, allowing immediate queueing of a handler job rather than waiting for a polling job to come pick it up.
HandshakeState
Interface to a Noise handshake.
Hash<T>
Implementations of this interface can generate one hash value for a given object.
Hash
Defines the hash as defined by the I2P data structure spec.
Hash384
48 byte hash
Hash512
64 byte hash
HashCash
Class for generation and parsing of HashCash
Copyright 2006 Gregory Rubin grrubin@gmail.com
Permission is given to use, modify, and or distribute this code so long as this message remains attached
Please see the spec at: http://www.hashcash.org/
HashDistance
Moved from PeerSelector
HashRange
Records the range of values that a hash value may take.
HashSetIVValidator Deprecated.
unused
Header
Class to represent RRD header.
Header
Instances of this class model the header section of an RRD file.
HeaderLine
Ref: http://en.wikipedia.org/wiki/MIME#Encoded-Word http://tools.ietf.org/html/rfc2047 https://jeffreystedfast.blogspot.com/2013/09/time-for-rant-on-mime-parsers.html https://jeffreystedfast.blogspot.com/2013/08/why-decoding-rfc2047-encoded-headers-is.html
HelperBase
Base helper
HelpSectionHelper
Render the configuration menu at the top of all the config pages.
Hex  
HexDump
Hexdump class (well, it's actually a namespace with some functions, but let's stick with java terminology :-).
HexTable  
HKDF
Various flavors of HKDF using HMAC-SHA256.
HMAC256Generator
Calculate the HMAC-SHA256 of a key+message.
HMAC256Generator.HMACKey
Like SecretKeySpec but doesn't copy the key in the construtor, for speed.
HMACGenerator
Calculate the HMAC of a key+message.
HomeHelper
For /home and /confighome
HopConfig
Defines the general configuration for a hop in a tunnel.
HopProcessor
Take a received tunnel message, verify that it isn't a duplicate, and translate it into what the next hop will want.
HostCheckHandler
Block certain Host headers to prevent DNS rebinding attacks.
HostCheckHandler
Block certain Host headers to prevent DNS rebinding attacks.
HostCheckHandler
Block certain Host headers to prevent DNS rebinding attacks.
HostInterface  
HostLookupMessage
Request the router look up the dest for a hash or a host.
HostReplyMessage
Response to HostLookupMessage.
HostReplyMessageHandler
Handle I2CP dest replies from the router
HostsTxtNamingService
A naming service based on multiple "hosts.txt" files.
HostTxtEntry
A hostname, b64 destination, and optional properties.
HostTxtIterator
A class to iterate through a hosts.txt or config file without reading the whole thing into memory.
HostTxtParser
Utility class providing methods to parse and write files in a hosts.txt file format, and subscription file format.
HRule  
HSpan  
HTML  
HTML  
HTTP  
HTTPHeader  
HTTPMUSocket  
HTTPPacket  
HTTPRequest
This class rappresnet an HTTP request, and act as HTTP client when it sends the request
HTTPRequestListener  
HTTPResponse  
HTTPResponseOutputStream
This does the transparent gzip decompression on the client side.
HTTPServer
This class identifies an HTTP over TCP server
The server must be initialized iether by the HTTPServer.open(InetAddress, int) or the HTTPServer.open(String, int) method.
Optionally a set of HTTPRequestListener may be set
The server then can be started or stopped by the method HTTPServer.start() and HTTPServer.stop()
HTTPServerList  
HTTPServerThread  
HTTPSocket  
HTTPStatus  
HTTPUSocket  
I2CPMessage
Defines the base functionality of API messages As of 0.9.48, does NOT extend DataStructure.
I2CPMessageException
Represent an error serializing or deserializing a message
I2CPMessageHandler
Define a way to handle a particular type of message
I2CPMessageHandler
Handle messages from the server for the client or vice versa
I2CPMessageImpl
Defines the base message implementation.
I2CPMessageProducer
Produce the various messages the session needs to send to the router.
I2CPMessageQueue
Contains the methods to talk to a router or client via I2CP, when both are in the same JVM.
I2CPMessageQueueImpl
Contains the methods to talk to a router or client via I2CP, when both are in the same JVM.
I2CPMessageReader
The I2CPMessageReader reads an InputStream (using I2CPMessageHandler) and passes out events to a registered listener, where events are either messages being received, exceptions being thrown, or the connection being closed.
I2CPMessageReader.I2CPMessageEventListener
Defines the different events the reader produces while reading the stream
I2NPMessage
Base interface for all I2NP messages Note: No longer extends DataStructure as of 0.9.48
I2NPMessageException
Represent an error serializing or deserializing an APIMessage
I2NPMessageHandler
Handle messages from router to router.
I2NPMessageImpl
Defines the base message implementation.
I2NPMessageImpl.Builder
interface for extending the types of messages handled - unused
I2PAppContext
Provide a base scope for accessing singletons that I2P exposes.
I2PAppThread
Like I2PThread but with per-thread OOM listeners, rather than a static router-wide listener list, so that an OOM in an app won't call the router listener to shutdown the whole router.
I2PClient
Define the standard means of interacting with the I2P system An I2PClient contains no state, it is just a facility for creating private key files and generating sesssions from existing private key files.
I2PClientFactory
Provide a means of hooking into an appropriate I2PClient implementation
I2PClientImpl
Base client implementation.
I2PClientMessageHandlerMap
Contains a map of message handlers that a session will want to use
I2PControlController
This handles the starting and stopping of Jetty from a single static class so it can be called via clients.config.
I2PControlHandler  
I2PControlVersion  
I2PDatagramDissector
Class for dissecting I2P repliable datagrams, checking the authenticity of the sender.
I2PDatagramMaker
Class for creating I2P repliable datagrams.
I2PDefaultServlet
Extends DefaultServlet to set locale for the displayed time of directory listings, to prevent leaking of the locale.
I2PException
Base class of I2P exceptions This was originally used to provide chained exceptions, but those were added to Exception in Java 1.4, so this class provides nothing extra at the moment.
I2PHMac
HMAC implementation based on RFC2104 H(K XOR opad, H(K XOR ipad, text)) modified by jrandom to use the session key byte array directly and to cache a frequently used buffer (called on doFinal).
I2Ping
Warning - not necessarily a stable API.
I2PInvalidDatagramException
Exception thrown when I2P repliable datagram signature verification fails.
I2Plistener
Listen on I2P and connect to TCP
I2PLogger
Modified from Jetty 6.1.26 StdErrLog.java and Slf4jLog.java Usage: org.eclipse.log.Log.setLog(new I2PLogger(ctx));
I2PProperties
This class contains a number of properties ((key,value)-pairs).
I2PProperties.I2PPropertyCallback  
I2PProvider  
I2PRequestLog
This RequestLog implementation outputs logs in the pseudo-standard NCSA common log format.
I2PServerSocket
Streaming server socket returned by I2PSocketManager.getServerSocket().
I2PServerSocketFull
Bridge to allow accepting new connections
I2PSession
Define the standard means of sending and receiving messages on the I2P network by using the I2CP (the client protocol).
I2PSessionDemultiplexer
Implement multiplexing with a 1-byte 'protocol' and a two-byte 'port'.
I2PSessionException
Thrown when there is a problem doing something on the session
I2PSessionImpl
Implementation of an I2P session running over TCP.
I2PSessionImpl.State  
I2PSessionImpl2
Thread safe implementation of an I2P session running over TCP.
I2PSessionListener
Define a means for the router to asynchronously notify the client that a new message is available or the router is under attack.
I2PSessionMuxedImpl
I2PSession with protocol and ports Streaming lib has been modified to send I2PSession.PROTO_STREAMING but still receives all.
I2PSessionMuxedListener
Define a means for the router to asynchronously notify the client that a new message is available or the router is under attack.
I2PSimpleClient
Simple client implementation with no Destination, just used to talk to the router.
I2PSimpleSession
Create a new session for doing naming and bandwidth queries only.
I2PSink
Producer This sends to a fixed destination specified in the constructor
I2PSinkAnywhere
Producer This sends to any destination specified in send()
I2PSnarkServlet
Refactored to eliminate Jetty dependencies.
I2PSnarkUtil
I2P specific helpers for I2PSnark We use this class as a sort of context for i2psnark so we can run multiple instances of single Snarks (but not multiple SnarkManagers, it is still static)
I2PSocket
Streaming socket returned by I2PSocketManager.connect(Destination).
I2PSocket.SocketErrorListener
Deprecated, unimplemented, does nothing.
I2PSocketAddress
A SocketAddress (Destination + port) so we can have SocketChannels.
I2PSocketEepGet
Fetch a URL using a socket from the supplied I2PSocketManager.
I2PSocketException
An I2P-specific IOException thrown from input and output streams, with a stored status code to be used for programmatic responses.
I2PSocketFull
Bridge between the full streaming lib and the I2PSocket API
I2PSocketManager
Centralize the coordination and multiplexing of the local client's streaming.
I2PSocketManager.DisconnectListener  
I2PSocketManagerFactory
Simplify the creation of I2PSession and transient I2P Destination objects if necessary to create a socket manager.
I2PSocketManagerFull Deprecated. 
I2PSocketManagerFull
Centralize the coordination and multiplexing of the local client's streaming.
I2PSocketOptions
Define the configuration for streaming and verifying data on the socket.
I2PSocketOptionsImpl
Define the configuration for streaming and verifying data on the socket.
I2PSOCKSIRCTunnel  
I2PSOCKSTunnel  
I2PSource  
I2PSSLSocketFactory
Loads trusted ASCII certs from ~/.i2p/certificates/ and $I2P/certificates/.
I2PThread
Preferred over Thread for all router uses.
I2PThread.OOMEventListener  
I2PtoTCP
Process I2P->TCP
I2PTunnel
An I2PTunnel tracks one or more I2PTunnelTasks and one or more I2PSessions.
I2PTunnel.ConnectionEventListener
Callback routine to find out
I2PTunnelClient  
I2PTunnelClientBase  
I2PTunnelConnectClient
Supports the following:
I2PTunnelDCCClient
A standard client, using an existing socket manager.
I2PTunnelDCCServer
A standard server that only answers for registered ports, and each port can only be used once.
I2PTunnelHTTPBidirProxy
Reuse HTTP server's I2PSocketManager for a proxy with no outproxy capability.
I2PTunnelHTTPBidirServer  
I2PTunnelHTTPClient
Act as a mini HTTP proxy, handling various different types of requests, forwarding them through I2P appropriately, and displaying the reply.
I2PTunnelHTTPClientBase
Common things for HTTPClient and ConnectClient Retrofit over them in 0.8.2
I2PTunnelHTTPClientBase.AuthResult  
I2PTunnelHTTPClientRunner
Override the response with a stream filtering the HTTP headers received.
I2PTunnelHTTPServer
Simple extension to the I2PTunnelServer that filters the HTTP headers sent from the client to the server, replacing the Host header with whatever this instance has been configured with, and if the browser set Accept-Encoding: x-i2p-gzip, gzip the http message body and set Content-Encoding: x-i2p-gzip.
I2PTunnelIRCClient
Todo: Can we extend I2PTunnelClient instead and remove some duplicated code?
I2PTunnelIRCServer
Simple extension to the I2PTunnelServer that filters the registration sequence to pass the destination hash of the client through as the hostname, so an IRC Server may track users across nick changes.
I2PTunnelOutproxyRunner
Like I2PTunnelRunner but socket-to-socket Warning - not maintained as a stable API for external use.
I2PTunnelRunner
A thread that starts two more threads, one to forward traffic in each direction.
I2PTunnelRunner.FailCallback
For use in new constructor
I2PTunnelRunner.SuccessCallback  
I2PTunnelServer  
I2PTunnelTask
Either a Server or a Client.
I2PTunnelUDPClientBase
Base client class that sets up an I2P Datagram client destination.
I2PTunnelUDPServerBase
Base client class that sets up an I2P Datagram server destination.
IBSkipIterator<K extends Comparable<? super K>,​V>
I2P Overridden to load the span when required and null out the keys and values when the iterator leaves the span.
IBSkipSpan<K extends Comparable<? super K>,​V>
I2P version of BSkipSpan BSkipSpan stores all keys and values in-memory, backed by the file.
Icon  
IconList  
ID3v1  
ID3v1Genres  
ID3v1Tag  
ID3v2  
ID3v22Tag  
ID3v23Tag  
ID3v24Frame  
ID3v24Tag  
ID3v2ChapterFrameData  
ID3v2ChapterTOCFrameData  
ID3v2CommentFrameData  
ID3v2Frame  
ID3v2FrameSet  
ID3v2ObseleteFrame  
ID3v2ObseletePictureFrameData  
ID3v2PictureFrameData  
ID3v2PopmFrameData  
ID3v2TagFactory  
ID3v2TextFrameData  
ID3v2UrlFrameData  
ID3v2WWWFrameData  
ID3Wrapper  
IdenticonCache  
IdenticonRenderer
Identicon renderer interface.
IdenticonServlet
This servlet generates identicon (visual identifier) images ranging from 16x16 to 512x512 in size.
IdenticonUtil
Utility methods useful for implementing identicon functionality.
IdentityBytes
May be used to scan and repair the database nondestructively.
IdleChecker
Periodically check for idle condition based on connected peers, and reduce/restore tunnel count as necessary.
IdleCloser
Close the POP3 connection after a certain idle time
IdnaTransformator  
ImageParameters  
ImageWorker  
InboundEndpointProcessor
Receive the inbound tunnel message, removing all of the layers added by earlier hops to recover the preprocessed data sent by the gateway.
InboundEstablishState
NTCP 2.
InboundEstablishState
Data for a new connection being established, where the remote peer has initiated the connection with us.
InboundEstablishState.InboundState  
InboundGatewayProcessor
Override the hop processor to seed the message with a random IV.
InboundGatewayReceiver
Handle messages at the IBGW.
InboundMessageDistributor
When a message arrives at the inbound tunnel endpoint, this distributor honors the instructions (safely)
InboundMessageFragments
Organize the received data message fragments, feeding completed messages to the MessageReceiver and telling the ACKSender of new peers to ACK.
InboundMessageFragments.ModifiableLong
Modifiable Long, no locking
InboundMessageState
Hold the raw data fragments of an inbound message.
InboundSender
Receive the preprocessed data for an inbound gateway, encrypt it, and forward it on to the first hop.
InboundTunnelBuildMessage
Sent from the tunnel creator to the IBGW via an outbound tunnel.
InclusiveByteRange
Byte range inclusive of end points.
IncomingConnectionFilter
Something that filters incoming streaming connections.
IndexBean
Simple accessor for exposing tunnel info, but also an ugly form handler Warning - This class is not part of the i2ptunnel API, it has been moved from the jar to the war.
InetAddressUtil  
InetAddressUtils
A collection of utilities relating to InetAddresses.
InfoHash
A 20-byte SHA1 info hash
InfoHelper  
InNetMessagePool
Manage a pool of inbound InNetMessages.
InstallUpdate
If the i2pupdate.zip file is present, unzip it and JVM exit.
IntBytes  
IntegrationCalculator
Determine how well integrated the peer is - how likely they will be useful to us if we are trying to get further connected.
IntelCPUInfo
An interface for classes that provide lowlevel information about Intel CPU's
IntelInfoImpl
Moved out of CPUID.java Ref: https://software.intel.com/en-us/articles/intel-architecture-and-processor-identification-with-cpuid-model-and-family-numbers Ref: http://en.wikipedia.org/wiki/List_of_Intel_CPU_microarchitectures
InternalClientManager
A manager for the in-JVM I2CP message interface
InternalServerSocket
A simple in-JVM ServerSocket using Piped Streams.
InternalSocket
A simple in-JVM Socket using Piped Streams.
InternalSocketRunner
Listen for in-JVM connections on the internal "socket"
InternalTrayManager
java -cp i2p.jar:router.jar:desktopgui.jar net.i2p.desktopgui.Main Full access to router context.
InternetAddressRR<IA extends InetAddress>
A resource record representing a internet address.
IntroductionManager
Keep track of inbound and outbound introductions.
InvalidAuthTokenException  
InvalidBEncodingException
Exception thrown when a bencoded stream is corrupted.
InvalidDatabaseException
Signals that there was an issue reading from the MaxMind DB file due to unexpected data formatting.
InvalidDatabaseException
Signals that there was an issue reading from the database file due to unexpected data formatting.
InvalidDataException  
InvalidDefinitionException
Exception thrown if the filter definition file cannot be parsed for some reason.
InvalidDescriptionException  
InvalidDnsNameException  
InvalidDnsNameException.DNSNameTooLongException  
InvalidDnsNameException.LabelTooLongException  
InvalidRrdException
An exception indicating a corrupted RRD.
InverseCapacityComparator
Order profiles by their capacity, but backwards (highest capacity / value first).
IPlottable
Interface to be used for custom datasources.
IPThrottler
Count IPs
IRandomStandalone
The basic visible methods of any pseudo-random number generator.
IRCFilter
Static methods to filter individual lines.
IrcInboundFilter
Thread to do inbound filtering.
IrcOutboundFilter
Thread to do outbound filtering.
IterativeFollowupJob
Ask a single peer for a single key.
IterativeLookupJob
Ask the peer who sent us the DSRM for the RouterInfos...
IterativeLookupSelector
Slightly modified version of FloodOnlyLookupSelector.
IterativeSearchJob
A traditional Kademlia search that continues to search when the initial lookup fails, by iteratively searching the closer-to-the-key peers returned by the query in a DSRM.
IterativeTimeoutJob
This is the timeout for a single lookup, not for the whole search.
IVValidator
Provide a generic interface for IV validation which may be implemented through something as simple as a hashtable or more a complicated bloom filter.
JApplet  
JaxpParser  
JButton  
JCheckBox  
JComboBox  
JettyStart
Start Jetty where the args are one or more XML files.
JettyXmlConfigurationParser
Parses a Jetty XML configuration file.
JFrame  
JLabel  
Job
Defines an executable task For use by the router only.
JobImpl
Base implementation of a Job For use by the router only.
JobQueue
Manage the pending jobs according to whatever algorithm is appropriate, giving preference to earlier scheduled jobs.
JobQueueHelper  
JobQueueRunner
a do run run run a do run run
JobStats
Glorified struct to contain basic job stats.
JobTiming
Define the timing requirements and statistics for a particular job For use by the router only.
JOptionPane  
JPanel  
JProgressBar  
JScrollPane  
Jsonable
Jsonables can be serialized in java script object notation (JSON).
JsonArray
JsonArray is a common non-thread safe data format for a collection of data.
Jsoner
Jsoner provides JSON utilities for escaping strings to be JSON compatible, thread safe parsing (RFC 4627) JSON strings, and serializing data to strings in JSON format.
JsonKey
Should be implemented by Enums so that keys are easily maintained.
JsonObject
JsonObject is a common non-thread safe data format for string to data mappings.
JSONRPC2Error
Represents a JSON-RPC 2.0 error that occurred during the processing of a request.
JSONRPC2ExtendedError
Represents a JSON-RPC 2.0 error that occured during the processing of a request.
JSONRPC2Helper  
JSONRPC2Message
The base abstract class for JSON-RPC 2.0 requests, notifications and responses.
JSONRPC2Notification
Represents a JSON-RPC 2.0 notification.
JSONRPC2ParamsType
Enumeration of the three parameter types in JSON-RPC 2.0 requests and notifications.
JSONRPC2ParseException
Thrown to indicate an exception during the parsing of a JSON-RPC 2.0 message string.
JSONRPC2Parser
Parses JSON-RPC 2.0 request, notification and response messages.
JSONRPC2Request
Represents a JSON-RPC 2.0 request.
JSONRPC2Response
Represents a JSON-RPC 2.0 response.
JSONRPC2Servlet
Provide an JSON-RPC 2.0 API for remote controlling of I2P
JSONUtils
Created by Sebastian Malecki on 13.05.14.
JspC
Simply call org.apache.jasper.JspC, then exit.
JSpinner  
JTextArea  
JTextPane  
KademliaNetworkDatabaseFacade
Kademlia based version of the network database.
KBTrimmer
Removes an element older than 15 minutes, but only if the bucket hasn't changed in 5 minutes.
KBucket<T extends SimpleDataStructure>
Group, without inherent ordering, a set of keys a certain distance away from a local key, using XOR as the distance metric Refactored from net.i2p.router.networkdb.kademlia
KBucketImpl<T extends SimpleDataStructure>
A concurrent implementation using ConcurrentHashSet.
KBucketSet<T extends SimpleDataStructure>
In-memory storage of buckets sorted by the XOR metric from the base (us) passed in via the constructor.
KBucketTrimmer<K extends SimpleDataStructure>
Called when a kbucket can no longer be split and is too big
KeyCertificate
This certificate type gets its own class because it's going to be used a lot.
KeyFactory  
KeyFactory
Modified from eddsa
KeyFactory
Make KeyPairs
KeyGenerator
Define a way of generating asymmetrical key pairs as well as symmetrical keys
KeyManager
Maintain all of the key pairs for the router.
KeyPair
Same as java.security.KeyPair, but with I2P keys
KeyPairGenerator
Default keysize is 256 (Ed25519)
KeyPairGenerator
Modified from eddsa Only supported strength is 2048
KeyRing
A backend for storing and retrieving SigningPublicKeys to be used for verifying signatures.
KeyRing
simple
KeysAndCert
KeysAndCert has a public key, a signing key, and a certificate.
KeySelector
Given a key, populates arrays determining word and bit offsets into a Bloom filter.
KeySelector.BitSelector  
KeySelector.WordSelector  
KeyStoreProvider  
KeyStoreUtil
Keystore utilities, consolidated from various places.
KRPC
Standard BEP 5 Mods for I2P:
LdhLabel
A LDH (Letters, Digits, Hyphen) label, which is the classical label form.
LeadingOrTrailingHyphenLabel
A DNS label with a leading or trailing hyphen ('-').
Lease
Defines the proof that a particular router / tunnel is allowed to receive messages for a particular Destination during some period of time.
Lease2
Like Lease but with 4-byte timestamps.
LeaseRequestState
Bundle up the data points necessary when asynchronously requesting a lease from a client
LeaseSet
Defines the set of leases a destination currently has.
LeaseSet2
See proposal 123
LeaseSetKeys
Wrap up the keys given to the router when a destination connects to it.
LegendComposer  
LegendText  
LHMCache<K,​V>
A LinkedHashMap with a maximum size, for use as an LRU cache.
Lifted
Sets of "friendly" utilities to make life easier.
LimitInputStream
Limit total reads and skips to a specified maximum, then return EOF
Line  
LinearInterpolator
Class used to interpolate datasource values from the collection of (timestamp, values) points.
LinearInterpolator.Method
A enumeration of interpolation methods
ListenerList  
LkupResult
The return value of I2PSession.lookupDest2()
LoadClientAppsJob
Run any client applications specified in clients.config.
LoadClientAppsJob.DelayedRunClient
Public for router console only, not for use by others, subject to change
LoadRouterInfoJob
Run once or twice at startup by StartupJob, and then runs BootCommSystemJob
LoadRouterInfoJob.KeyData  
LocaleWebAppHandler
Convert foo.jsp to foo_xx.jsp for language xx.
LocalHash
Pull the caching used only by KBucketImpl out of Hash and put it here.
LocalHTTPServer
Very simple web server.
Location  
Log
A simple log with automatic time stamping.
Log
Wrapper class for whatever logging system I2P uses.
LogBean  
LogConsoleBuffer
Offer a glimpse into the last few console messages generated.
Logger  
Logging  
LogLimit
Defines the log limit for a particular set of logs
LogManager
Manages the logging system, loading (and reloading) the configuration file, coordinating the log limits, and storing the set of log records pending.
LogRecord
Keep track of a log entry, unformatted.
LogRecordFormatter
Render a log record according to the log manager's settings
LogsHelper  
LogWriter
Log writer thread that pulls log records from the LogManager and writes them to the log.
LongOpt
This object represents the definition of a long option in the Java port of GNU getopt.
LookaheadInputStream
Simple lookahead buffer to keep the last K bytes in reserve, configured to easily be reused.
LookupDest
Connect via I2CP and ask the router to look up the lease of a hash, convert it to a Destination and return it.
LookupDestJob
Look up the lease of a hash, to convert it to a Destination for the client.
LookupResult
The return value of I2PSession.lookupDest2()
LookupService
Provides a lookup service for information based on an IP address.
LookupThrottler
Count how often we have recently received a lookup request with the reply specified to go to a peer/TunnelId pair.
MagnetState
Simple state for the download of the metainfo, shared between Peer and ExtensionHandler.
MagnetURI  
Mail
data structure to hold a single message, mostly used with folder view and sorting
MailCache
There's one of these for each Folder.
MailCache.FetchMode  
MailPart  
Main
Start from command line
Main
The main class of the application.
Main
Execute one of the other classes in this package.
MAN  
Mapper  
Markers  
MarkLiveliness
Write a timestamp to the ping file where other routers trying to use the same configuration can see it
MaskedIPSet
Used for detection of routers with matching IPs or family.
MaskUtil  
MasterSession
A session that does nothing, but implements interfaces for raw, datagram, and streaming for convenience.
MatrixToImageConfig
Encapsulates custom configuration used in methods of MatrixToImageWriter.
MatrixToImageWriter
Writes a BitMatrix to BufferedImage, file or stream.
MatrixUtil  
MemoryBuffer
Buffer backed by a byte array.
Message
Class to define Message.
Message
Used to queue outgoing connections sendMessage() should be used to translate them to wire format.
MessageContext
Context information about JSON-RPC 2.0 request and notification messages.
MessageHandler
Receive raw information from the I2PSession and turn it into Packets, if we can.
MessageHistory
Simply act as a pen register of messages sent in and out of the router.
MessageId
Defines the message ID of a message delivered between a router and a client in a particular session.
MessageInputStream
Stream that can be given messages out of order yet present them in order.
MessageOutputStream
A stream that we can shove data into that fires off those bytes on flush or when the buffer is full.
MessageOutputStream.DataReceiver
Define a component to receive data flushed from this stream
MessageOutputStream.WriteStatus
Define a way to detect the status of a write
MessagePayloadMessage
Defines the payload message a router sends to the client
MessagePayloadMessageHandler
Handle I2CP MessagePayloadMessages from the router delivering the contents of a message by accepting it, decrypting the payload, adding it to the set of recieved messages, and telling the router that it has been recieved correctly.
MessageQueue
Base queue for messages not yet packetized
MessageReceivedJob
Async job to notify the client that a new message is available for them, or just send it directly if specified.
MessageReceiver
Pull fully completed fragments off the InboundMessageFragments queue, parse 'em into I2NPMessages, and stick them on the InNetMessagePool by way of the UDPTransport.
Messages
Translate strings for this package.
Messages
Translate strings for this package.
Messages
Translate strings for this package.
Messages
Translate strings for this package.
MessageSelector
Define a mechanism to select what messages are associated with a particular OutNetMessage.
MessageState
Contains the state of a payload message being sent to a peer.
MessageStatusMessage
Defines the message a router sends to a client about a single message.
MessageStatusMessageHandler
Handle I2CP MessageStatusMessages from the router.
MessageType  
MessageValidator
Singleton to manage the logic (and historical data) to determine whether a message is valid or not (meaning it isn't expired and hasn't already been received).
MessageWrapper
Method and class for garlic encrypting outbound netdb traffic, and sending keys and tags for others to encrypt inbound netdb traffic, including management of the ElGamal/AES tags.
MessageWrapper.OneTimeSession
A single key and tag, for receiving a single message.
MessageWrapper.WrappedMessage
Wrapper so that we can keep track of the key and tags for later notification to the SKM
Metadata  
MetaInfo
Note: this class is buggy, as it doesn't propogate custom meta fields into the bencoded info data, and from there to the info_hash.
MetaLease
Like a Lease, but points to another LeaseSet.
MetaLeaseSet
PRELIMINARY - Subject to change - see proposal 123
MetaNamingService
A naming service of multiple naming services.
MigrateJetty
Migrate the clients.config and jetty.xml files from Jetty 5/6 to Jetty 7/8.
MimeTypes
Based on MimeTypes from Jetty 6.1.26, heavily simplified and modified to remove all dependencies on Jetty libs.
MiniDnsIdna  
MLabRunner
As modified from BiglyBT MLabPlugin
MLabRunner.ToolListener
The parameter for runNDT()
MLabRunner.ToolRun
Returned from runNDT
MLabRunner.ToolRunListener
The listener for ToolRun
Mode
See ISO 18004:2006, 6.4.1, Tables 2 and 3.
MouseAdapter  
MouseEvent  
Mp3File  
Mp3Tags
Callback used to fetch data
Mp3Test
Callback used to fetch data
MpegFrame  
MsgID
Used for both incoming and outgoing message IDs
MTU
Get the MTU for the network interface of an address.
MultiRouter
Fire up multiple routers in the same VM, all with their own RouterContext (and all that entails).
MultiSink<S extends Sink>
Sends to one of many Sinks
MultiSource
Sends to many Sinks
MutableInteger  
Mutex  
MuxedEngine
Handles the actual decryption using the supplied keys and data.
MuxedSKM
Both.
MUXlisten
Multiplex listeners for TCP and I2P
MX
MX record payload (mail service pointer).
NamedDB
Internal database to relate nicknames to options to values
NamedParamsRetriever
Utility class for retrieving JSON-RPC 2.0 named parameters (key-value pairs packed into a JSON Object).
NamingService
Naming services create a subclass of this class.
NamingServiceBean
Talk to the NamingService API instead of modifying the hosts.txt files directly, except for the 'published' addressbook.
NamingServiceListener  
NamingServiceUpdater  
NativeBigInteger
BigInteger that takes advantage of the jbigi library for the modPow operation, which accounts for a massive segment of the processing cost of asymmetric crypto.
NavHelper  
NDTConstants
Class to hold constants.
NDTUtils
Class that defines utility methods used by the NDT code
NegativeLookupCache
Track lookup fails
NetDbHelper
/netdb A FormHandler since 0.9.38.
NetDbRenderer  
NetDbRenderer.RAComparator
Sort by style, then host
NetworkDatabaseFacade
Defines the mechanism for interacting with I2P's network database
NetworkSettingHandler  
NewFrame
Utility class that creates a new "Frame" with a window closing functionality.
NewMailListener
Listen for indication of new mail, maybe
NewsEntry
One news item.
NewsFeedHelper
HTML-formatted full news entries
NewsFetcher
Task to fetch updates to the news.xml, and to keep track of whether that has an announcement for a new version.
NewsHandler
Task to periodically look for updates to the news.xml, and to keep track of whether that has an announcement for a new version.
NewsHelper
If news file does not exist, use file from the initialNews directory in $I2P
NewsManager
Manage current news.
NewsMetadata
The update metadata.
NewsMetadata.Release  
NewsMetadata.Update  
NewsTimerTask
Task to periodically look for updates to the news.xml, and to keep track of whether that has an announcement for a new version.
NewsXMLParser
Parse out the news.xml file which is in Atom format (RFC4287).
NewsXMLParser.XHTMLMode
The action taken when encountering a non-whitelisted XHTML element or blacklisted attribute in the feed content.
NextSessionKey
A X25519 key and key ID.
NID
A 20-byte peer ID, used as a Map key in lots of places.
NineBlockIdenticonRenderer2
9-block Identicon renderer.
NoCache
A no-op cache singleton.
Node  
NodeCache  
NodeCache.Loader  
NodeData  
NodeInfo  
NodeInfoComparator
Closest to a InfoHash or NID key.
NodeList  
Noise
Utility functions for the Noise protocol library.
NonLdhLabel
A DNS label which contains more than just letters, digits and a hyphen.
NonReservedLdhLabel
A Non-Reserved LDH label (NR-LDH label), which do not have "--" in the third and fourth position.
NonRrdSource  
Normalizer  
NoSuchTagException  
NotificationHandler
Interface for handling JSON-RPC 2.0 notifications.
NotifyListener  
NotifyRequest  
NotSupportedException  
NS
Nameserver record.
NSEC
NSEC record payload.
NSEC3
NSEC3 record payload.
NSEC3.HashAlgorithm
DNSSEC NSEC3 Hash Algorithms.
NSEC3PARAM
NSEC3PARAM record payload.
Nsid  
NT  
NTCP2Options
NTCP2 Padding/Dummy/Delay configuration for data phase.
NTCP2Payload
NTCP2 Payload generation and parsing
NTCP2Payload.Block
Base class for blocks to be transmitted.
NTCP2Payload.DateTimeBlock  
NTCP2Payload.I2NPBlock  
NTCP2Payload.OptionsBlock  
NTCP2Payload.PaddingBlock  
NTCP2Payload.PayloadCallback
For all callbacks, recommend throwing exceptions only from the handshake.
NTCP2Payload.RIBlock  
NTCP2Payload.TerminationBlock  
NTCPConnection
Coordinate the connection to a single peer.
NTCPConnection.PrepBuffer  
NTCPSendFinisher
Previously, NTCP was using SimpleTimer with a delay of 0, which was a real abuse.
NTCPTransport
The NIO TCP transport
NtpClient
NtpClient - an NTP client for Java.
NtpMessage
This class represents a NTP message, as specified in RFC 2030.
NTS  
ObjectCounter<K>
Count things.
OldConsoleHelper  
OOMListener
Kaboom
OPENPGPKEY  
OPT
OPT payload (see RFC 2671 for details).
OrderedProperties
Properties map that has its keySet ordered consistently (via the key's lexicographical ordering).
OsfwWorker
OsfwWorker creates a thread that listens for a message from the server.
OtherNonLdhLabel
A Non-LDH label which does not begin with an underscore ('_'), hyphen ('-') or ends with an hyphen.
OutboundCache
Helper for OCMOSJ This is the place where we make I2P go fast.
OutboundCache.HashPair
Key used to cache things with based on source + dest
OutboundClientMessageJobHelper
Static methods to create a Garlic Message with one or more cloves, as follows:
OutboundClientMessageOneShotJob
Send a client message out an outbound tunnel and into an inbound tunnel on the target leaseSet.
OutboundEstablishState
Data for a new connection being established, where we initiated the connection with a remote peer.
OutboundEstablishState.OutboundState  
OutboundGatewayMessage
Stores all the state for an unsent or partially-sent message
OutboundGatewayProcessor
Turn the preprocessed tunnel data into something that can be delivered to the first hop in the tunnel.
OutboundMessageDistributor
When a message arrives at the outbound tunnel endpoint, this distributor honors the instructions.
OutboundMessageFragments
Coordinate the outbound fragments and select the next one to be built.
OutboundMessageFragments.ActiveThrottle
throttle
OutboundMessageRegistry
Tracks outbound messages.
OutboundMessageState
Maintain the outbound fragmentation for resending, for a single message.
OutboundNTCP2State
NTCP 2 only.
OutboundReceiver
We are the outbound gateway - we created this outbound tunnel.
OutboundRefiller
Blocking thread to grab new messages off the outbound queue and plopping them into our active pool.
OutboundSender
Receive the preprocessed data for an outbound gateway, encrypt all of the layers, and forward it on to the first hop.
OutboundTunnelBuildReplyMessage
Sent from the OBEP to the tunnel creator via an inbound tunnel.
OutboundTunnelEndpoint
We are the end of an outbound tunnel that we did not create.
OutNetMessage
Wrap up an outbound I2NP message, along with the information associated with its delivery and jobs to be fired off if particular events occur.
OutNetMessagePool
Maintain a pool of OutNetMessages destined for other routers, organized by priority, expiring messages as necessary.
Outproxy  
OutputStreamBuffer
Output only.
Packet
This contains solely the data that goes out on the wire, including the local and remote port which is embedded in the I2CP overhead, not in the packet itself.
PacketBuilder
Big ol' class to do all our packet formatting.
PacketBuilder.Fragment
Class for passing multiple fragments to buildPacket()
PacketHandler
receive a packet and dispatch it correctly to the connection specified, the server socket, or queue a reply RST packet.
PacketHandler
Pull inbound packets from the inbound receiver's queue, figure out what peer session they belong to (if any), authenticate and decrypt them with the appropriate keys, and push them to the appropriate handler.
PacketLocal
This is the class used for outbound packets.
PacketPusher
Blocking thread to grab new packets off the outbound fragment pool and toss 'em onto the outbound packet queues.
PacketQueue
Queue out packets to be sent through the session.
Pair
A pair of routers and the distance between them.
Panel  
Parameter  
ParameterList  
ParamsRetriever
The base abstract class for the JSON-RPC 2.0 parameter retrievers.
Parser  
ParserException  
PartialEepGet
Fetch exactly the first 'size' bytes into a stream Anything less or more will throw an IOException No retries, no min and max size options, no timeout option If the server does not return a Content-Length header of the correct size, the fetch will fail.
PartialPiece
Store the received data either on the heap or in a temp file.
ParticipatingThrottler
Count how often we have accepted a tunnel with the peer as the previous or next hop.
PasswordManager
Manage both plaintext and salted/hashed password storage in router.config.
PathIterator  
Pattern
Information about all supported handshake patterns.
Payload
Defines the actual payload of a message being delivered, including the standard encryption wrapping, as defined by the I2P data structure spec.
PayloadGarlicConfig
Garlic config for a single clove, containing an I2NP message and no sub-cloves.
PcapWriter
Write a standard pcap file with a "TCP" packet that can be analyzed with standard tools such as wireshark.
PDef  
PDef  
PDPStatusBlock
Instances of this class model the primary data point status from an RRD file.
Peer
A single peer for a single torrent.
Peer  
PeerAcceptor
Accepts incomming connections from peers.
PeerAcceptor.ProtocolException
A unique exception so we can tell the ConnectionAcceptor about non-BT connections
PeerCheckerTask
TimerTask that checks for good/bad up/downloader.
PeerConnectionIn  
PeerConnectionOut  
PeerCoordinator
Coordinates what peer does what.
PeerCoordinatorSet
Hmm, any guesses as to what this is? Used by the multitorrent functionality in the PeerAcceptor to pick the right PeerCoordinator to accept the con for.
PeerHelper  
PeerID
Store the address information about a peer.
PeerListener
Listener for Peer events.
PeerManager
Manage the current state of the statistics Also maintain Sets for each of the capabilities in TRACKED_CAPS.
PeerManagerFacade
Manage peer references and keep them up to date so that when asked for peers, it can provide appropriate peers according to the criteria provided.
PeerManagerFacadeImpl
Base implementation that has simple algorithms and periodically saves state
PeerMonitorTask Deprecated.
unused, for command line client only, commented out in Snark.java
PeerProfile
Copied from http://www.i2p2.i2p/how_peerselection.html See also main() below for additional commentary by zzz.
Peers
All the peers for a single torrent
PeerSelectionCriteria
Defines the criteria for selecting a set of peers for use when searching the PeerManager Only used by PeerTestJob, which may not have a point.
PeerSelector
Mostly unused, see overrides in FloodfillPeerSelector
PeerState
Contain all of the state about a UDP connection to a peer.
PeerState  
PeerTestEvent
Initiate a test (we are Alice)
PeerTestJob
Grab some peers that we want to test and probe them briefly to get some more accurate and up to date performance data.
PeerTestManager
Entry points are runTest() to start a new test as Alice, and receiveTest() for all received test packets.
PeerTestState
Track the state of a peer test.
PeerTestState.Role  
PendingGatewayMessage
Stores all the state for an unsent or partially-sent message
PerfectStringHash
A "minimal perfect hash" for Strings.
PersistDHT
Retrieve / Store the local DHT in a file
PersistenceHelper
Output rate data.
PersistentDataStore
Write out keys to disk when we get them and periodically read ones we don't know about into memory, with newly read routers are also added to the routing table.
PersistentKeyRing
ConcurrentHashMap with backing in the router.config file.
PersistentMailCache
Manage the on-disk cache.
PersistNews
Store and retrieve news entries from disk.
PersistRouterInfoJob
Update the router.info file whenever its, er, updated
PersistSybil
Store and retrieve analysis files from disk.
Piece
This class is used solely by PeerCoordinator.
Pinger  
PlotElement  
Plottable Deprecated.
use implementations of IPlottable instead
PluginStarter
Start/stop/delete plugins that are already installed Get properties of installed plugins Get or change settings in plugins.config
PluginStopper
Stop all plugins that are installed and running
PluginUpdateChecker
Check for an updated version of a plugin.
PluginUpdateHandler
Check for or download an updated version of a plugin.
PluginUpdateRunner
Check for an updated version of a plugin.
Points
A total score and a List of reason Strings
PoisonI2CPMessage
For marking end-of-queues in a standard manner.
Poly1305
Simple implementation of the Poly1305 message authenticator.
PooledTunnelCreatorConfig
Data about a tunnel we created
POP3MailBox  
POP3MailBox.FetchRequest  
PortableWorkingDir
Get a relative working directory for i2p based upon properties by parent process.
PortMapper
Map services to internal or external application ports for this context.
PositionalParamsRetriever
Utility class for retrieving JSON-RPC 2.0 positional parameters (packed into a JSON Array).
PQEntry
For PriBlockingQueue
PresentationListener  
PriBlockingQueue<E extends PQEntry>
Priority Blocking Queue using methods in the entries, as defined in PQEntry, to store priority and sequence number, ensuring FIFO order within a priority.
PrintText  
PrivateKey
Defines the PrivateKey as defined by the I2P data structure spec.
PrivateKeyFile
This helper class reads and writes files in the same "eepPriv.dat" format used by the client code.
ProfileManager  
ProfileManagerImpl
Methods to update profiles.
ProfileOrganizer
Keep the peer profiles organized according to the tiered model.
ProfileOrganizer.Slice
Replaces integer subTierMode argument, for clarity
ProfileOrganizerRenderer
Helper class to refactor the HTML rendering from out of the ProfileOrganizer
ProfilePersistenceHelper
Write profiles to disk at shutdown, read at startup.
ProfilesHelper  
Property  
PropertyList  
Protocol
Class aggregating operations that can be performed for sending/receiving/reading Protocol messages
PTR
A PTR record is handled like a CNAME.
PublicKey
Defines the PublicKey as defined by the I2P data structure spec.
PublicSuffixList
Public suffix is a set of DNS names or wildcards concatenated with dots.
PublicSuffixListParser
Parses the list from publicsuffix.org and configures a PublicSuffixFilter.
PublicSuffixMatcher
Utility class that can test if DNS names match the content of the Public Suffix List.
PublishLocalRouterInfoJob
Publish the local router's RouterInfo periodically.
PumpedTunnelGateway
This is used for all gateways with more than zero hops.
QRCode  
QRCodeWriter
This object renders a QR Code as a BitMatrix 2D array of greyscale values.
QRServlet
This servlet generates QR code images.
QueryListener  
QueryRequest  
QueryResponse  
Question
A DNS question (request).
QueuedClientConnectionRunner
Zero-copy in-JVM.
QueuedI2CPMessageReader
Get messages off an In-JVM queue, zero-copy.
QuotedPrintable
ref: https://en.wikipedia.org/wiki/Quoted-printable
RAIFile  
RandomAccessInterface  
RandomArt
Draw an ASCII-Art representing the fingerprint so human brain can profit from its built-in pattern recognition ability.
RandomArtServlet
This servlet generates random art (visual identifier) images.
RandomIfOldTrimmer<T extends SimpleDataStructure>
Removes a random element, but only if the bucket hasn't changed in 5 minutes.
RandomIterator<E>
This is some Java code I wrote for a school project to save some time when iterating in random order over a part of list (until some condition becomes true): Here is a sample on how to use the code:
RandomSource
Singleton for whatever PRNG i2p uses.
RandomTrimmer<T extends SimpleDataStructure>
Removes a random element.
RatchetEntry
Simple object with outbound tag, key, and nonce, and an optional next keys.
RatchetPayload
Ratchet payload generation and parsing
RatchetPayload.AckBlock  
RatchetPayload.AckRequestBlock  
RatchetPayload.Block
Base class for blocks to be transmitted.
RatchetPayload.DateTimeBlock  
RatchetPayload.GarlicBlock  
RatchetPayload.NextKeyBlock  
RatchetPayload.OptionsBlock  
RatchetPayload.PaddingBlock  
RatchetPayload.PayloadCallback
For all callbacks, recommend throwing exceptions only from the handshake.
RatchetPayload.PNBlock  
RatchetPayload.TerminationBlock  
RatchetSessionTag
8 bytes of random data.
RatchetSKM  
RatchetTagSet
A tagset class for one direction, either inbound or outbound.
Rate
Simple rate calculator for periodically sampled data points - determining an average value over a period, the number of events in that period, the maximum number of events (using the interval between events), and lifetime data.
RateAverages
Storage space for computations of various averages.
RateStat
coordinate a moving rate over various periods
RateSummaryListener
Receive the state of the rate when its coalesced
ReadBuffer
Input only for constant data, initialized from a byte array.
ReadConfigJob
Simply read the router config periodically, so that the user may make config changes externally.
ReadCounter
Count the bytes that have been read or skipped
Reader
Instances of this class provide a reader for the MaxMind DB format.
Reader
Pool of running threads which will process any read bytes on any of the NTCPConnections, including the decryption of the data read, connection handshaking, parsing bytes into I2NP messages, etc.
Reader.FileMode
The file mode to use when opening a MaxMind DB.
ReaderException
The general exception class throw when something goes wrong during decoding of a barcode.
ReadLine
Modified from I2PTunnelHTTPServer Handles UTF-8.
RebuildRouterInfoJob
This used be called from StartAcceptingClientsJob but is now disabled.
ReceiveMessageBeginMessage
Defines the message a client sends to a router when asking the router to start sending a message to it.
ReceiveMessageEndMessage
Defines the message a client sends to a router when asking the router to start sending a message to it.
ReconfigureSessionMessage
Defines the message a client sends to a router when updating the config on an existing session.
Record<D extends Data>
A generic DNS record.
Record.CLASS
The symbolic class of a DNS record (usually Record.CLASS.IN for Internet).
Record.TYPE
The resource record type.
Recorder
Definition of a recorder.
RedDSAEngine
Signing and verification for REdDSA using SHA-512 and the Ed25519 curve.
RedKeyPairGenerator
Default keysize is 256 (Ed25519)
ReedSolomonEncoder
Implements Reed-Solomon encoding, as the name implies.
RefreshRoutersJob
Go through all the routers once, after startup, and refetch their router infos.
Region  
RejectTrimmer<T extends SimpleDataStructure>
Removes nothing and always rejects the add.
RemoteHostId
Unique ID for a peer - its IP + port, all bundled into a tidy obj.
RemovableSingletonSet<E>
Like Collections.singleton() but item is removable, clear() is supported, and the iterator supports remove().
RenewSubscriber  
ReplyCallback
ECIES will call this back if an ack was requested and received.
ReplyJob
Defines an executable task that can be fired off in reply to a message
ReplyTracker<S extends Sink>
Track who the reply goes to
ReportAbuseJob
Async job to send an abuse message to the client
ReportAbuseMessage
Defines the message a client sends to a router when asking the router what its address visibility is
Republish
Periodically publish our RouterInfo to the netdb
RepublishLeaseSetJob
Run periodically for each locally created leaseSet to cause it to be republished if the client is still connected.
Request
Holds all information needed for a partial piece request.
RequestHandler
Interface for handling JSON-RPC 2.0 requests.
RequestLeaseSetJob
Async job to walk the client through generating a lease set.
RequestLeaseSetMessage
Defines the message a router sends to a client to request that a leaseset be created and signed.
RequestLeaseSetMessageHandler
Handle I2CP RequestLeaseSetMessage from the router by granting all leases, using the specified expiration time for each lease.
RequestThrottler
Like ParticipatingThrottler, but checked much earlier, cleaned more frequently, and with more than double the min and max limits.
RequestVariableLeaseSetMessage
Defines the message a router sends to a client to request that a leaseset be created and signed.
RequestVariableLeaseSetMessageHandler
Handle I2CP RequestVariableLeaseSetMessage from the router by granting all leases, retaining the individual expiration time for each lease.
RequestWrapper
Refactored in 0.9.33 to use Servlet 3.0 API and remove dependency on old Jetty 5 MultiPartRequest code.
ReseedBundler
Copy a random selection of 'count' router infos from configDir/netDb to 'toDir'.
ReseedChecker
Moved from RouterConsoleRunner.java Reseeding is not strictly a router function, it used to be in the routerconsole app, but this made it impossible to bootstrap an embedded router lacking a routerconsole, in iMule or android for example, without additional modifications.
Reseeder
Moved from ReseedHandler in routerconsole.
ReseedGenerator
Handler to create a i2preseed.zip file
ReseedHandler
Handler to deal with reseed requests.
ReservedLdhLabel
A reserved LDH label (R-LDH label), which have the property that they contain "--" in the third and fourth characters.
ResettableGZIPInputStream
GZIP implementation per RFC 1952, reusing java's standard CRC32 and Inflater and InflaterInputStream implementations.
ResettableGZIPOutputStream
GZIP implementation per RFC 1952, reusing java's standard CRC32 and Deflater implementations.
Restarter  
ResultsTextPane  
RetransmissionTimer
Per-destination timer
ReusableGZIPInputStream
Provide a cache of reusable GZIP unzipper streams.
ReusableGZIPOutputStream
Provide a cache of reusable GZIP streams, each handling up to 40 KB output without expansion.
RFC3339Date
Adapted from net.i2p.router.util.RFC822Date.
RFC822Date
Moved from NewsFetcher
Robin
Class to represent archive values for a single datasource.
RobinArray
Class to represent archive values for a single datasource.
RobinMatrix
Class to represent archive values for a single datasource.
RootDescription  
Router
Main driver for the router.
RouterAddress
Defines a method of communicating with a router For efficiency, the options methods and structures here are unsynchronized.
RouterApp
If a class started via clients.config implements this interface, it will be used to manage the client, instead of starting with main() Clients implementing this interface MUST provide the following constructor: public MyClientApp(RouterContext context, ClientAppManager listener, String[] args) {...} All parameters are non-null.
RouterAppManager
Notify the router of events, and provide methods for client apps to find each other.
RouterClock
Alternate location for determining the time which takes into account an offset.
RouterClock.ClockShiftListener  
RouterConsoleRunner
Start the router console.
RouterContext
Build off the core I2P context to provide a root for a router instance to coordinate its resources.
RouterDoSThrottle Deprecated.
unused
RouterFragmentHandler
Minor extension to allow message history integration
RouterIdentity
Defines the unique identifier of a router, including any certificate or public key.
RouterInfo
Defines the data that a router either publishes to the global routing table or provides to trusted peers.
RouterInfoHandler  
RouterKeyGenerator
Component to manage the munging of hashes into routing keys - given a hash, perform some consistent transformation against it and return the result.
RouterLaunch
This is the class called by the runplain.sh script on linux and the i2p.exe launcher on Windows.
RouterManager
Handle communications with the router instance.
RouterManagerHandler  
RouterManagerHandler.UpdateWrapperManagerTask  
RouterPasswordManager
Manage both plaintext and salted/hashed password storage in router.config.
RouterPrivateKeyFile
Same format as super, simply adds a method to treat it as a RouterIdentity instead of a Destination.
RouterRestartException
An I2PException thrown from I2PServerSocket.accept() when the router is restarting.
RouterThrottle
Gatekeeper for deciding whether to throttle the further processing of messages through the router.
RouterThrottleImpl
Simple throttle that basically stops accepting messages or nontrivial requests if the jobQueue lag is too large.
RouterTimestamper
Periodically query a series of NTP servers and update any associated listeners.
RouterVersion
Expose a version string
RouterWatchdog
Periodically check to make sure things haven't gone totally haywire (and if they have, restart the JVM)
RoutingKeyGenerator
Component to manage the munging of hashes into routing keys - given a hash, perform some consistent transformation against it and return the result.
RpnCalculator  
RrdAllocator
An internal usage class.
RRDatabase
Instances of this class model Round Robin Database (RRD) files.
RrdBackend
Base implementation class for all backend classes.
RrdBackendAnnotation
Description of a RrdBackendFactory
RrdBackendException
Wrap a exception generated by the backend store
RrdBackendFactory
Base (abstract) backend factory class which holds references to all concrete backend factories and defines abstract methods which must be implemented in all concrete factory implementations.
RrdByteArrayBackend
Abstract byte array based backend.
RrdDb
Main class used to create and manipulate round robin databases (RRDs).
RrdDb.Builder
Builder for RrdDb instances.
RrdDbPool
This class should be used to synchronize access to RRD files in a multithreaded environment.
RrdDef
Class to represent definition of new Round Robin Database (RRD).
RrdDefTemplate
Class used to create an arbitrary number of RrdDef (RRD definition) objects from a single XML template.
RrdDouble<U extends RrdUpdater<U>>  
RrdDoubleArray<U extends RrdUpdater<U>>  
RrdDoubleMatrix<U extends RrdUpdater<U>>  
RrdEnum<U extends RrdUpdater<U>,​E extends Enum<E>>  
RrdException
A general purpose RRD4J exception.
RRDFile
This class is used read information from an RRD file.
RrdFileBackend
An abstract backend which is used to store RRD data to ordinary files on the disk.
RrdFileBackendFactory
An abstract backend factory which is used to store RRD data to ordinary files on the disk.
RrdGraph
Class which actually creates Rrd4j graphs (does the hard work).
RrdGraphConstants
Class to represent various constants used for graphing.
RrdGraphConstants.FontConstructor
Font constructor, to use embedded fonts.
RrdGraphConstants.FontTag
RrdGraphDef
Class which should be used to define new Rrd4j graph.
RrdGraphDef.ImageSource
Implementations of this class can be used to generate image than can be layered on graph.
RrdGraphInfo
Class to represent successfully created Rrd4j graph.
RrdInt<U extends RrdUpdater<U>>  
RrdLong<U extends RrdUpdater<U>>  
RrdMemoryBackend
Backend to be used to store all RRD bytes in memory.
RrdMemoryBackendFactory
Factory class which creates actual RrdMemoryBackend objects.
RrdNioBackend
Backend which is used to store RRD data to ordinary disk files using java.nio.* package.
RrdNioBackendFactory
Factory class which creates actual RrdNioBackend objects.
RrdPrimitive<U extends RrdUpdater<U>>  
RrdRandomAccessFileBackend
Backend which is used to store RRD data to ordinary files on the disk.
RrdRandomAccessFileBackendFactory
Factory class which creates actual RrdRandomAccessFileBackend objects.
RrdSafeFileBackend
Backend which is used to store RRD data to ordinary files on the disk, using locking.
RrdSafeFileBackend.Counters  
RrdSafeFileBackendFactory
Factory class which creates actual RrdSafeFileBackend objects.
RrdString<U extends RrdUpdater<U>>  
RrdSyncThreadPool
Thread pool used by RrdNioBackend instances to periodically sync the mapped file to disk.
RrdSyncThreadPool.DaemonThreadFactory
Daemon thread factory used by the monitor executors.
RrdToolkit
Class used to perform various complex operations on RRD files.
RrdToolReader  
RrdUpdater<T extends RrdUpdater<T>>  
RRSIG
RRSIG record payload.
RRWithTarget
A resource record pointing to a target.
RSAConstants
Constants for RSA
RSASigningPrivateCrtKey
A SigningPrivateKey that retains the Chinese Remainder Theorem parameters, so it can be converted back to a Java CRT key.
Rule  
RunStandalone  
SAMBridge
SAM bridge implementation.
SAMClientEventListenerImpl
Basic noop client event listener
SAMDatagramReceiver
Interface for sending raw data to a SAM client
SAMDatagramSession
SAM DATAGRAM session class.
SAMEventHandler
Simple helper implementation of a the SAMClientEventListener
SAMException
Exception thrown by SAM methods
SAMHandler
Base class for SAM protocol handlers.
SAMHandlerFactory
SAM handler factory class.
SAMInvalidDirectionException
Exception thrown by SAM methods when an application tries to create outgoing connections through a receive-only SAM session.
SAMMessageSess
Base interface for SAMMessageSession, which is the base for v1/v3 datagram and raw sessions.
SAMMessageSession
Base abstract class for SAM message-based sessions.
Sample
Class to represent data source values for the given timestamp.
SAMRawReceiver
Interface for sending raw data to a SAM client
SAMRawSession
SAM RAW session class.
SAMReader
Read from a socket, producing events for any SAM message read
SAMReader.SAMClientEventListener
Async event notification interface for SAM clients
SAMStreamReceiver
Interface for sending streaming data to a SAM client
SAMStreamSend
Swiss army knife tester.
SAMStreamSession
SAM STREAM session class.
SAMStreamSession.StreamSender
Lets us push data through the stream without blocking, (even after exceeding the I2PSocket's buffer)
SAMStreamSink
Swiss army knife tester.
SAMUtils
Miscellaneous utility methods used by SAM protocol handlers.
SAMv1Handler
Class able to handle a SAM version 1 client connections.
SAMv2Handler
Class able to handle a SAM version 2 client connection.
SAMv2StreamSession
SAMv2 STREAM session class.
SAMv3DatagramServer
This is the thread listening on 127.0.0.1:7655 or as specified by sam.udp.host and sam.udp.port properties.
SAMv3DatagramSession  
SAMv3Handler
Class able to handle a SAM version 3 client connection.
SAMv3RawSession  
SAMv3StreamSession
SAMv3 STREAM session class.
ScalarOps  
SchedulerChooser
Examine a connection's state and pick the right scheduler for it.
SchedulerClosed
Scheduler used for after both sides have had their close packets ACKed, but the final timeout hasn't passed.
SchedulerClosing
Scheduler used for after both SYNs have been ACKed and both sides have closed the stream, but either we haven't ACKed their close or they haven't ACKed ours.
SchedulerConnectedBulk
Scheduler used for after our SYN has been sent and ACKed but one (or more) sides haven't closed the stream yet.
SchedulerConnecting
Scheduler used once we've sent our SYN but it hasn't been ACKed yet.
SchedulerDead
Scheduler used for after the final timeout has passed or the connection was reset.
SchedulerHardDisconnected
Scheduler used after we've locally done a hard disconnect, but the final timeout hasn't passed.
SchedulerImpl
Base scheduler
SchedulerPreconnect
Scheduler used for locally created connections where we have not yet sent the initial SYN packet.
SchedulerReceived
Scheduler used after receiving an inbound connection but before we have sent our own SYN.
SDSCache<V extends SimpleDataStructure>
A least recently used cache with a max size, for SimpleDataStructures.
SearchHelper
Helper for searches.
SearchJob
Search for a particular key iteratively until we either find a value or we run out of peers Note that this is rarely if ever used directly, and is primary used by the ExploreJob extension.
SearchListener  
SearchMessageSelector
Check to see the message is a reply from the peer regarding the current search
SearchReplyJob  
SearchResponseListener  
SearchState
Data related to a particular search
SearchUpdateReplyFoundJob
Called after a match to a db search is found Used only by SearchJob which is only used by ExploreJob
SecureDirectory
Same as File but sets the file mode after mkdir() so it can be read and written by the owner only (i.e.
SecureFile
Same as SecureDirectory but sets the file mode after createNewFile() and createTempFile() also.
SecureFileOutputStream
Same as FileOutputStream but sets the file mode so it can only be read and written by the owner only (i.e.
SecurityManager
Manage the password storing for I2PControl.
SelectionCollector<T extends SimpleDataStructure>
Visit kbuckets, gathering matches
SelfSignedGenerator
Generate keys and a selfsigned certificate, suitable for storing in a Keystore with KeyStoreUtil.storePrivateKey().
SendMessageDirectJob
Send a message directly to another router, i.e.
SendMessageExpiresMessage
Same as SendMessageMessage, but with an expiration to be passed to the router As of 0.8.4, retrofitted to use DateAndFlags.
SendMessageMessage
Defines the message a client sends to a router to ask it to deliver a new message
SendMessageOptions
Advanced options attached to a single outgoing I2CP message.
SendMessageOptions.GzipOption
Overrides i2cp.gzip session option and size threshold for this message only.
SendMessageOptions.Reliability
Reliability bits 9-10
SendMessageStatusListener
Asynchronously notify the client of the status of a sent message.
Serializer<T>  
Service
Define the manageable service interface for the subsystems in the I2P router
Service  
ServiceData  
ServiceList  
ServiceStateTable  
Servlet
A wrapper for addressbook to allow it to be started as a web application.
ServletUtil
Simple utilities for servlets.
Session
A V3 session.
SessionConfig
Defines the information a client must provide to create a session
SessionId
Defines the token passed between the router and client to associate messages with a particular session.
SessionIdleTimer
Reduce tunnels or shutdown the session on idle if so configured
SessionKey
Defines the SessionKey as defined by the I2P data structure spec.
SessionKeyAndNonce
A session key is 32 bytes of data.
SessionKeyManager
Manage the session keys and session tags used for encryption and decryption.
SessionRecord
The values in the SessionsDB
SessionsDB
basically a HashMap from String to SessionRecord
SessionsDB.ExistingDestException  
SessionsDB.ExistingIdException  
SessionStatusMessage
Defines the message a router sends to a client indicating the status of the session.
SessionStatusMessageHandler
Handle I2CP SessionStatusMessagese from the router, updating the session as necssary.
SessionTag
32 bytes, usually of random data.
SessionTagListener
Something that looks for SessionTags.
SetDateMessage
Tell the other side what time it is.
SetDateMessageHandler
Handle I2CP time messages from the router
SevenBit
Decode only.
SHA1
NOTE: As of 0.8.7, use getInstance() instead of new SHA1(), which will return the JVM's MessageDigest if it is faster.
SHA1Hash
Because DSAEngine was abusing Hash for 20-byte hashes
SHA256Generator
Defines a wrapper for SHA-256 operation.
ShellCommand
Passes a command to the OS shell for execution and manages the input and output.
ShortEncryptedBuildRecord
Small records.
ShortTunnelBuildMessage
Variable size, small records.
ShortTunnelBuildReplyMessage
Internal use only, to convert an inbound STBM to a reply.
ShutdownHook
Just for failsafe.
ShutdownListener
Callback for end of shutdown sequence.
SigAlgo
Base signature algorithm type
SigContext
Defines the context for signing with personalized hashes.
SigContext.SigContextSpec
The AlgorithmParameterSpec.
Signature
Defines the signature as defined by the I2P data structure spec.
SigningPrivateKey
Defines the SigningPrivateKey as defined by the I2P data structure spec.
SigningPublicKey
Defines the SigningPublicKey as defined by the I2P data structure spec.
SigType
Defines the properties for various signature types that I2P supports or may someday support.
SigUtil
Utilities for Signing keys and Signatures
SimpleBandwidthEstimator
A Westwood+ bandwidth estimator with a first stage anti-aliasing low pass filter based on RTT, and the time-varying Westwood filter based on inter-arrival time.
SimpleBandwidthEstimator
A Westwood+ bandwidth estimator with a first stage anti-aliasing low pass filter based on RTT, and the time-varying Westwood filter based on inter-arrival time.
SimpleByteCache
Like ByteCache but works directly with byte arrays, not ByteArrays.
SimpleDataStructure
A SimpleDataStructure contains only a single fixed-length byte array.
SimpleScheduler Deprecated.
in 0.9.20, use SimpleTimer2 instead
SimpleStore
Deprecated - used only by SimpleTimer
SimpleTimeLabelFormat
Simple time label using a format similar to strftime.
SimpleTimer
Simple event scheduler - toss an event on the queue and it gets fired at the appropriate time.
SimpleTimer.TimedEvent
Simple interface for events to be queued up and notified on expiration
SimpleTimer2
Simple event scheduler - toss an event on the queue and it gets fired at the appropriate time.
SimpleTimer2.TimedEvent
Similar to SimpleTimer.TimedEvent but users must extend instead of implement, and all schedule and cancel methods are through this class rather than SimpleTimer2.
SingleFileNamingService
A naming service based on a single file using the "hosts.txt" format.
SingleLookupJob
Ask the peer who sent us the DSRM for the RouterInfos...
SingleSearchJob
Ask a single peer for a single key.
SingleTagSet
Inbound ES tagset with a single tag and key.
Sink  
SipHash
Wrapper around SipHashInline with constant per-JVM keys
SipHashInline
SipHash implementation with hand inlining the SIPROUND.
SkipIterator<K extends Comparable<? super K>,​V>
A basic iterator for a skip list.
SkipLevels<K extends Comparable<? super K>,​V>  
SkipList<K extends Comparable<? super K>,​V>  
SkipSpan<K extends Comparable<? super K>,​V>  
SMTPClient  
Snark
Main Snark program startup class.
Snark.RouterException
A unique exception class to blame the router that can be caught by SnarkManager
SnarkManager
Manage multiple snarks
SnarkShutdown Deprecated.
unused
SOA
SOA (start of authority) record payload.
SOAP  
SOAPRequest  
SOAPResponse  
SocketController
This handles the starting and stopping of a ServerSocket from a single static class so it can be called via clients.config.
SocketListener  
SocketTimeout
Implements one or two timers; one for inactivity, that is reset by resetTimer(), and optionally, a total time since instantiation, that is configured by setTotalTimeoutPeriod().
SocketWrapper
Wrapper around the Socket obtained from the Outproxy, which is a wrapper around the Orchid Stream.
SOCKS4aServer  
SOCKS4Client
A simple SOCKS 4/4a client.
SOCKS4Constants  
SOCKS4Constants.Command  
SOCKS4Constants.Reply  
SOCKS5Client
A simple SOCKS 5 client.
SOCKS5Constants  
SOCKS5Constants.AddressType  
SOCKS5Constants.Command  
SOCKS5Constants.Method  
SOCKS5Constants.Reply  
SOCKS5Server  
SOCKSException
Exception thrown by socket methods
SOCKSHeader
Save the SOCKS header from a datagram Ref: RFC 1928
SOCKSServer
Abstract base class used by all SOCKS servers.
SOCKSServerFactory
Factory class for creating SOCKS forwarders through I2P
SOCKSUDPPort
Implements a UDP port and Socks encapsulation / decapsulation.
SOCKSUDPTunnel
A Datagram Tunnel that can have multiple bidirectional ports on the UDP side.
SOCKSUDPUnwrapper
Strip a SOCKS header off a datagram, convert it to a Destination Ref: RFC 1928
SOCKSUDPWrapper
Put a SOCKS header on a datagram Ref: RFC 1928
Sorters
Sorters
Sorters
Comparators for various columns
Sorters.DateSorter
sorts Mail objects by date field
Sorters.FileAndIndex
Class to precompute and efficiently sort data on a torrent file entry.
Sorters.SenderSorter
sorts Mail objects by sender field
Sorters.SizeSorter
sorts Mail objects by message size
Sorters.SubjectSorter
sorts Mail objects by subject field
Sorters.ToSorter
sorts Mail objects by to: fields
SortHelper
The sorting of addresses in RIs
Source  
Source  
Source  
SourcedPlotElement  
Span  
SparseArray<E>
SparseArray maps integers to Objects and, unlike a normal array of Objects, its indices can contain gaps.
SpeedCalculator
Quantify how fast the peer is - how fast they respond to our requests, how fast they pass messages on, etc.
SpeedComparator
Order profiles by their speed (lowest first).
Spinner
A non-daemon thread to let the shutdown task get all the way to the end
SpinnerNumberModel  
SplitKeys
Standard Noise split().
SRV
SRV record payload (service pointer).
SSDP
This class defines constant value related to SSDP.
All the values defined here are complaint to the UPnP Standard
SSDPNotifyRequest  
SSDPNotifySocket
This class identifies a SSDP socket only for notifing packet.
SSDPNotifySocketList  
SSDPPacket  
SSDPRequest  
SSDPResponse  
SSDPSearchRequest  
SSDPSearchResponse  
SSDPSearchResponseSocket  
SSDPSearchResponseSocketList  
SSDPSearchSocket  
SSDPSearchSocketList  
SSLClientListenerRunner
SSL version of ClientListenerRunner
SSLClientUtil
Utilities for I2PTunnel client SSL server sockets.
SSLEepGet
HTTPS only, no retries, no min and max size options, no timeout option As of 0.9.45, supports redirect to https (redirect to http will still fail).
SSLEepGet.ProxyType
Not all may be supported.
SSLEepGet.SSLState
An opaque class for the caller to pass to repeated instantiations of SSLEepGet.
SSLHelper
Helper class for ssl.jsp
SSLServerSocketChannel
Simple wrapper for a SSLServerSocket.
SSLSocketChannel
Simple wrapper for a SSLSocket.
SSLUtil
Utilities for SAM SSL server sockets.
SSLUtil
Utilities for SAM SSL server sockets.
SSUHMACGenerator
Calculate the HMAC-MD5-128 of a key+message.
ST  
Stack  
StandardServerSocket
Bridge to I2PServerSocket.
StandardSocket
Bridge to I2PSocket.
StartAcceptingClientsJob
start I2CP interface
StartExplorersJob
Fire off search jobs for random keys from the explore pool, up to MAX_PER_RUN at a time.
StartupJob
The StartupJob should be run once on router startup to initialize the system and set things in motion.
StatefulConnectionFilter
A ConnectionFilter that may hold state, can be started and stopped
StateVariable  
StateVariableData  
StatHelper
Dump the peer profile data if given a full B64 peer string or prefix.
StaticSnark
Main snark startup class for staticly linking with gcj.
StatisticsManager
Publishes some statistics about the router in the netDB.
StatLog
Component to be notified when a particular event occurs
StatManager
Coordinate the management of various frequencies and rates within I2P components, both allowing central update and retrieval, as well as distributed creation and use.
StatsGenerator
Dump the stats to the web admin interface
StatSummarizer
A thread started by RouterConsoleRunner that checks the configuration for stats to be tracked via jrobin, and adds or deletes RRDs as necessary.
StatusPanel
Class that displays status of tests being run.
Storage
Maintains pieces on disk.
StorageListener
Callback used when Storage changes.
StoreJob
Stores through this always request a reply.
StoreMessageSelector
Check to see the message is a reply from the peer regarding the current store
StoreState
Tracks the state of a StoreJob
Stream  
StreamrConsumer
Compared to a standard I2PTunnel, this acts like a client on the I2P side (no privkey file) but a server on the UDP side (sends to a configured host/port)
StreamrProducer
Compared to a standard I2PTunnel, this acts like a server on the I2P side (persistent privkey file) but a client on the UDP side (receives on a configured port)
StrictCountries
Maintain a list of countries that may have tight restrictions on applications like ours.
StringBuilderWriter
StringBuilder version of StringWriter
StringBytes  
StringSelection  
StringUtil  
StyledDocument  
SU3File
Succesor to the ".sud" format used in TrustedUpdate.
Subscriber
server-mode
Subscriber  
SubscriberList  
Subscription
A subscription to a remote address book.
Subscription  
SubscriptionIterator
An iterator over the subscriptions in a SubscriptionList.
SubscriptionList
A list of Subscriptions loaded from a file.
SubscriptionRequest  
SubscriptionResponse  
SubscriptionsBean  
SubSession
An additional session using another session's connection.
SummaryBarRenderer
Refactored from summarynoframe.jsp to save ~100KB
SummaryHelper
Simple helper to query the appropriate router for data necessary to render the summary sections on the router console.
SummaryHelper.NetworkState  
SummaryHelper.NetworkStateMessage
State message to be displayed to the user in the summary bar.
SummaryListener
Creates and updates the in-memory or on-disk RRD database, and provides methods to generate graphs of the data
SummaryRenderer
Generate the RRD graph png images, including the combined rate graph.
SybilRenderer
For debugging only.
SymmetricState
Symmetric state for helping manage a Noise handshake.
SyntheticREDQueue
A "synthetic" queue in that it doesn't actually queue anything.
SystemVersion
Methods to find out what system we are running on
TagSetHandle
An opaque handle to a TagSet returned by the SessionKeyManager, so that OCMOSJ can report that the tags were later acked, or not.
TaskScheduler
Coordinates what we do 'next'.
TCBShare
Share important TCP Control Block parameters across Connections to the same remote peer.
Tcpbw100
Main Applet class that creates UI, defines tests and interprets results from the tests.
TCPio
Shove data from one stream to the other.
TCPlistener
Listen on TCP port and connect to I2P
TCPtoI2P
Process TCP->I2P
TDef  
TestJob
Repeatedly test a single tunnel for its entire lifetime, or until the pool is shut down or removed from the client manager.
ThreadCore  
ThreadDump
Only works with wrapper on non-windows platforms
Threshold
Definition of a Threshold.
ThrottledPumpedTunnelGateway
Same as PTG, but check to see if a message should be dropped before queueing it.
TimeAxis  
TimeAxisSetting  
TimedWeightedPriorityMessageQueue
Weighted priority queue implementation for the outbound messages, coupled with code to fail messages that expire.
TimedWeightedPriorityMessageQueue.FailedListener  
TimeLabelFormat
Simplified version of DateFormat for just defining how to map a timestamp into a label for presentation.
TimeoutPipedInputStream
Adds setReadTimeout().
TimeoutPipedOutputStream
Helper for TimeoutPipedInputStream.
TimeParser
Class which parses at-style time specification (described in detail on the rrdfetch man page), used in all RRDTool commands.
TimerUtil  
TimeScanner  
TimeSpec
Simple class to represent time obtained by parsing at-style date specification (described in detail on the rrdfetch man page.
Timestamper
Dummy.
Timestamper.UpdateListener
Interface to receive update notifications for when we query the time Only used by Clock.
TimeToken  
TLSA  
TLSA.CertUsage  
TLSA.MatchingType  
TLSA.Selector  
Token
Used for Both outgoing and incoming tokens
TokenKey
Used to index incoming Tokens
Toolkit  
TooManyStreamsException
We attempted to have more open streams than we are willing to put up with
Torrents
All the torrents
Tracker
A structure for known trackers
TrackerClient
Informs metainfo tracker of events and gets new peers for peer coordinator.
TrackerInfo
The data structure for the tracker response.
TransientDataStore
Stores in-memory only.
TransientSessionKeyManager
Implement the session key management, but keep everything in memory (don't write to disk).
Translate
Translate strings efficiently.
TranslateReader
Translate.
TranslateSVGServlet
Translate a svg file on-the-fly.
Transport
Defines a way to send a message to another peer and start listening for messages.
Transport.AddressSource  
TransportBid
Provide a bid for how much it would "cost" to transfer a message of a particular peer
TransportEventListener  
TransportImpl
Defines a way to send a message to another peer and start listening for messages
TransportManager
Keeps track of the enabled transports.
TransportManager.Port  
TransportUtil  
TransportUtil.IPv6Config  
TrayManager
Manages the tray icon life.
TrivialPreprocessor
Do the simplest thing possible for preprocessing - for each message available, turn it into the minimum number of fragmented preprocessed blocks, sending each of those out.
TrivialRouterPreprocessor Deprecated.
unused
TrustedPluginKeys
Plugin keys we know about.
TrustedUpdate
Handles DSA signing and verification of update files.
TryCache<T>
An object cache which is safe to use by multiple threads without blocking.
TryCache.ObjectFactory<T>
Something that creates objects of the type cached by this cache
TunnelBuildMessage
The basic build message with 8 records.
TunnelBuildMessageBase
Base for TBM, TBRM, VTBM, VTBRM Retrofitted over them.
TunnelBuildReplyMessage
The basic build reply message with 8 records.
TunnelConfig
Helper class to generate a valid TunnelController configuration from provided settings.
TunnelController
Coordinate the runtime operation and configuration of a single I2PTunnel.
TunnelControllerGroup
Coordinate a set of tunnels within the JVM, loading and storing their config to disk, and building new ones as requested.
TunnelControllerGroup.CustomThreadPoolExecutor
Not really needed for now but in case we want to add some hooks like afterExecute().
TunnelCreatorConfig
Coordinate the info that the tunnel creator keeps track of, including what peers are in the tunnel and what their configuration is See PooledTunnelCreatorConfig for the non-abstract class
TunnelDataMessage
Defines the message sent between routers as part of the tunnel delivery The tunnel ID is changed in-place by TunnelParticipant.send(), so we can't reuse the checksum on output, but we still subclass FastI2NPMessageImpl so we don't verify the checksum on input...
TunnelDispatcher
Handle the actual processing and forwarding of messages through the various tunnels.
TunnelDispatcher.Location
for shouldDropParticipatingMessage()
TunnelGateway
Serve as the gatekeeper for a tunnel, accepting messages, coalescing and/or fragmenting them before wrapping them up for tunnel delivery.
TunnelGateway.QueuePreprocessor  
TunnelGateway.Receiver  
TunnelGateway.Sender  
TunnelGatewayMessage
Defines the message sent between one tunnel's endpoint and another's gateway.
TunnelGatewayPumper
Run through the tunnel gateways that have had messages added to them and push those messages through the preprocessing and sending process.
TunnelGatewayZeroHop
Serve as the gatekeeper for a tunnel with no hops, either inbound or outbound.
TunnelHelper  
TunnelHistory
Tunnel related history information
TunnelId
Defines the tunnel ID that messages are passed through on a set of routers.
TunnelInfo
Defines the information associated with a tunnel
TunnelManagerFacade
Build and maintain tunnels throughout the network.
TunnelParticipant
Participate in a tunnel at a location other than the gateway or outbound endpoint.
TunnelParticipatingHelper  
TunnelPeerCountHelper  
TunnelPeerSelector
Coordinate the selection of peers to go into a tunnel for one particular pool.
TunnelPool
A group of tunnels for the router or a particular client, in a single direction.
TunnelPoolManager
Manage all the exploratory and client tunnel pools.
TunnelPoolSettings
Wrap up the settings for a pool of tunnels.
TunnelRenderer
For /tunnels.jsp, used by TunnelHelper.
TXT
A TXT record.
UDPAddress
basic helper to parse out peer info from a udp address
UDPEndpoint
Coordinate the low-level datagram socket, creating and managing the UDPSender and UDPReceiver.
UDPIOthread Deprecated.
incomplete, unused
UDPPacket
Basic delivery unit containing the datagram.
UDPPacketReader
To read a packet, initialize this reader with the data and fetch out the appropriate fields.
UDPReceiver
Lowest level component to pull raw UDP datagrams off the wire as fast as possible, controlled by both the bandwidth limiter and the router's throttle.
UDPSender
Lowest level packet sender, pushes anything on its queue ASAP.
UDPSink  
UDPSorters
Comparators for various columns
UDPSorters.AlphaComparator  
UDPSorters.CwndComparator  
UDPSorters.DupComparator  
UDPSorters.IdleInComparator  
UDPSorters.IdleOutComparator  
UDPSorters.MTUComparator  
UDPSorters.PeerComparator  
UDPSorters.RateInComparator  
UDPSorters.RateOutComparator  
UDPSorters.RecvCountComparator  
UDPSorters.ResendComparator  
UDPSorters.RTOComparator  
UDPSorters.RTTComparator  
UDPSorters.SendCountComparator  
UDPSorters.SkewComparator  
UDPSorters.SsthreshComparator  
UDPSorters.UptimeComparator  
UDPSource  
UDPTransport
The SSU transport
UIMessages
A queue of messages, where each has an ID number.
UIMessages.Message  
UnderscoreLabel
A DNS label which begins with an underscore ('_').
UnivalArray
This class is used to read a unival from a file unival is a rrdtool type, defined in rrd_format.h
UNKNOWN  
UnknownCPUException  
UnknownEdnsOption  
UnknownI2NPMessage
This is similar to DataMessage or GarlicMessage but with a variable message type.
UnsignedUpdateChecker
Does a simple EepHead to get the last-modified header.
UnsignedUpdateHandler
Handles the request to update the router by firing off an EepGet call to download the latest unsigned zip file and displaying the status to anyone who asks.
UnsignedUpdateRunner
Eepget the .zip file to the temp dir, then notify.r Moved from UnsignedUpdateHandler and turned into an UpdateTask.
UnsupportedCryptoException
Signature verification failed because the sig type is unknown or unavailable.
UnsupportedTagException  
UpdateHandler
Handles the request to update the router by firing one or more EepGet calls to download the latest signed update file and displaying the status to anyone who asks.
UpdateHandler
Handles the request to update the router by firing one or more EepGet calls to download the latest signed update file and displaying the status to anyone who asks.
UpdateHandler
Handles the request to update the router by firing up a magnet.
UpdateManager
The central resource coordinating updates.
UpdateMethod
Transport mechanism for getting something.
UpdatePostProcessor
An external class to handle complex processing of update files, where necessary instead of simply copying i2pupdate.zip to the config dir.
Updater
Controls one or more types of updates.
UpdateRoutingKeyModifierJob
Update the routing Key modifier every day at midnight (plus on startup).
UpdateRunner
The downloader for router signed updates, and the base class for all the other Checkers and Runners.
UpdateRunner
The downloader for router signed updates.
UpdateTask
A running check or download.
UpdateType
What to update
UPnP
This (and all in org/freenet, org/cybergarage, org/xmlpull) grabbed from freenet SVN, mid-February 2009 by zzz.
UPnP  
UPnP.IPv6ForwardPort
Extended to store the requested IP to be forwarded.
UPnPManager
Bridge from the I2P RouterAddress data structure to the freenet data structures
UPnPScannerCallback
For Android MulticastLock.
UPnPStatus  
URIUtil
URI Holder.
UrlLauncher
A quick and simple multi-platform URL launcher.
UserAgentTools  
USN  
UTF8Reader
An unbuffered version of InputStreamReader.
UTF8StringBytes
Added by I2P
Util
For NetDbRenderer and Sybil http://forums.sun.com/thread.jspa?threadID=597652
Util
Class defines various utility functions used in Rrd4j.
Util.Xml
Various DOM utility functions.
Utils
Basic utilities for EdDSA.
ValueAxis  
ValueAxis.YLabel  
ValueAxisLogarithmic  
ValueAxisMrtg  
ValueAxisSetting  
ValueScaler  
ValueScaler.Scaled  
Variable
An abstract class to help extract single value from a set of value (VDEF in rrdtool) It can be used to add new fancy statistical calculation with rrd values
Variable.AVERAGE
Calculate the average of the data points.
Variable.ComparPercentElemen
The sort used by rrdtool for percent, where NaN < -INF < finite values < INF
Variable.FIRST
Find the first valid data point and it's timestamp
Variable.LAST
Find the first last valid point and it's timestamp
Variable.LSLCORREL
Calculate the correlation coefficient of the least squares line.
Variable.LSLINT
Calculate the y-intercept of the least squares line.
Variable.LSLSLOPE
Calculate the slop of the least squares line.
Variable.MAX
The biggest of the data points and it's time stamp (the first one) is stored.
Variable.MIN
The smallest of the data points and it's time stamp (the first one) is stored.
Variable.PercentElem
Store all the informations about a datasource point, for predictive and consistent sorting
Variable.PERCENTILE
Find the point at the n-th percentile.
Variable.PERCENTILENAN  
Variable.STDDEV
Calculate the standard deviation for the data point.
Variable.TOTAL
Calculate the sum of the data points.
Variable.Value
This class store both the value and the time stamp It will be used by graph rendering legend
VariableTunnelBuildMessage
Variable number of records.
VariableTunnelBuildReplyMessage
Transmitted from the new outbound endpoint to the creator through a reply tunnel.
VDef  
VDef  
VerifiedDestination
Extend Destination with methods to verify its Certificate.
Version
See ISO 18004:2006 Annex D
Version  
Version.ECB
Encapsulates the parameters for one error-correction block in one symbol version.
Version.ECBlocks
Encapsulates a set of error-correction blocks in one symbol version.
VersionBean  
VersionComparator
Compares versions.
VIACPUInfo
Moved out of CPUID.java
VIAInfoImpl
Moved out of CPUID.java
VMCommSystem
Hacked up in-VM comm system for talking between contexts.
VRule  
VSpan  
WebAppConfiguration
Add to the webapp classpath as specified in webapps.config.
WebAppProviderConfiguration
Work around the "No org.apache.tomcat.InstanceManager set in ServletContext" problem for eepsites with webapps.
WebAppProviderConfiguration.WAPConfiguration  
WebAppStarter
Add, start or stop a webapp.
WebMail  
WebPeer
BEP 19.
WindowAdapter  
WindowEvent  
WizardHandler
The new user wizard.
WizardHelper
The new user wizard.
WorkingDir
Get a working directory for i2p.
WrapperListener
Listen for events.
Writer
The base class for all objects which encode/generate a barcode image.
Writer
Pool of running threads which will transform the next I2NP message into something ready to be transferred over an NTCP connection, including the encryption of the data read.
WriterException
A base class which covers the range of exceptions which may occur when encoding a barcode using the Writer framework.
WriterOutputStream
Treat a writer as an output stream.
X25519DH
DH wrapper around Noise's Curve25519 with I2P types.
X25519KeyFactory
Try to keep DH pairs at the ready.
X25519Spec  
XML  
XMLParser
Override so that XHTML is parsed correctly.
XmlReader  
XmlTemplate
Class used as a base class for various XML template related classes.
XmlWriter
Extremely simple utility class used to create XML documents.
XnLabel
A label that begins with "xn--" and follows the LDH rule.
XORComparator<T extends SimpleDataStructure>
Help sort Hashes in relation to a base key using the XOR metric
XSSFilter  
XSSRequestWrapper  
YKGenerator
Precalculate the Y and K for ElGamal encryption operations.
Yylex
This class is a scanner generated by JFlex 1.4.3 on 8/30/16 5:50 PM from the specification file /home/davinloegering/cliftonlabs/workspace/json-simple/src/main/lex/jsonstrict.lex
Yytoken
Represents structural entities in JSON.
Yytoken.Types
Represents the different kinds of tokens.
ZipFileComment Deprecated.
scheduled for removal late 2017, not for external use
Zones
Country to continent mapping for NTP.