Package | Description |
---|---|
gnu.crypto.prng |
The Fortuna PRNG from GNU Crypto, updated and modifed for I2P.
|
i2p.susi.dns |
The SusiDNS webapp, which is the user interface for the addressbook application
and the local naming service (hosts database) implemented in net.i2p.client.naming.
|
net.i2p |
Core I2P package, contains information about the I2P version and an entry point to access important elements.
|
net.i2p.app |
Interfaces for classes to be started and stopped via clients.config.
|
net.i2p.apps.systray |
A system tray control for launching the I2P router console.
|
net.i2p.BOB |
BOB, the Basic Open Bridge, allows TCP applications to talk over I2P.
|
net.i2p.client |
Interfaces and factories for
the base I2P SDK used to develop applications that communicate
through I2P.
|
net.i2p.client.impl |
Implements the base I2P SDK for developing applications that communicate
through I2P.
|
net.i2p.client.naming |
Provides a standard way for querying the local naming service to resolve a
name into a
Destination (without the complexity of JNDI). |
net.i2p.client.streaming |
API, interfaces, and factory for a TCP-like (reliable, authenticated, in order) set of sockets for
communicating over the IP-like (unreliable, unauthenticated, unordered) I2P
messages.
|
net.i2p.client.streaming.impl |
Implementation of a TCP-like (reliable, authenticated, in order) set of sockets for
communicating over the IP-like (unreliable, unauthenticated, unordered) I2P
messages.
|
net.i2p.crypto |
These classes provide a number of low-level cryptographic routines.
|
net.i2p.data.i2np |
This package defines the low-level messages sent between routers,
called the Invisible Internet Network Protocol (I2NP).
|
net.i2p.data.router |
Classes formerly in net.i2p.data but moved here as they are only used by the router.
|
net.i2p.desktopgui |
Desktopgui is a graphical interface to I2P that allows managing the lifecycle of I2P from the system tray.
|
net.i2p.desktopgui.i18n | |
net.i2p.i2ptunnel |
Implementation of preconfigured tunnels, both for clients and servers,
and a UI for adding more and editing the configuration.
|
net.i2p.i2ptunnel.socks |
SOCKS 4, 4a, and 5 client tunnels.
|
net.i2p.i2ptunnel.udpTunnel | |
net.i2p.i2ptunnel.ui |
Classes for configuring tunnels, used externally by Android.
|
net.i2p.i2ptunnel.web |
The UI for adding tunnels and editing their configurations,
implemented as a webapp packaged in i2ptunnel.war.
|
net.i2p.jetty |
Classes for starting Jetty, logging requests, and debug logging to the I2P router log.
|
net.i2p.kademlia |
This is a major rewrite of KBucket, KBucketSet, and KBucketImpl from net.i2p.router.networkdb.kademlia.
|
net.i2p.router |
The I2P router application handles the I2P network communication.
|
net.i2p.router.crypto |
Classes formerly in net.i2p.crypto but moved here as they are only used by the router.
|
net.i2p.router.message |
Creates and parses garlic messages.
|
net.i2p.router.news |
Classes to parse the I2P news format, which follows the Atom
standard with additional metadata for the I2P update notification feature.
|
net.i2p.router.startup |
The I2P startup package loads the configuration when I2P is started.
|
net.i2p.router.tasks |
Miscellaneous classes, mostly things that are executed periodically as
Jobs, Threads, and SimpleTimer.TimedEvents.
|
net.i2p.router.time |
Provides classes for time synchronization using NTP.
|
net.i2p.router.transport |
The transport system allows the usage of communication layers that are below I2P in the stack, on which I2P messages are sent.
|
net.i2p.router.transport.crypto |
DH key generation.
|
net.i2p.router.transport.ntcp |
The NTCP transport allows passing I2P messages on top of TCP.
|
net.i2p.router.transport.udp |
The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.
|
net.i2p.router.tunnel |
All the work of managing locally created and participating tunnels,
creating and handling tunnel messages, and their encryption.
|
net.i2p.router.util |
These classes define the several useful utilities used
throughout the router.
|
net.i2p.router.web |
The router console user interface, implemented in routerconsole.jar, with these classes
supporting the webapp in routerconsole.war.
|
net.i2p.sam |
The SAM client API.
|
net.i2p.sam.client |
Demo and test client classes.
|
net.i2p.stat |
These classes define the statistics package used extensively throughout
the I2P router - both for adaptive operation of the router
and for debugging.
|
net.i2p.util |
These classes define the several useful utilities used
throughout the router and applications.
|
org.cybergarage.util | |
org.klomp.snark |
I2P version of the snark bittorrent client, imported in 2005 and heavily enhanced
to add a web UI, DHT support, and other features.
|
org.klomp.snark.dht | |
org.klomp.snark.standalone | |
org.klomp.snark.web |
The i2psnark user interface, implemented as a webapp in i2psnark.war.
|
Constructor and Description |
---|
AsyncFortunaStandalone(I2PAppContext context) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
BaseBean._context |
Modifier and Type | Field and Description |
---|---|
protected static I2PAppContext |
I2PAppContext._globalAppContext
the context that components without explicit root are bound
|
Modifier and Type | Method and Description |
---|---|
static I2PAppContext |
I2PAppContext.getCurrentContext()
Pull the default context, WITHOUT creating a new one.
|
static I2PAppContext |
I2PAppContext.getGlobalContext()
Pull the default context, creating a new one if necessary, else using
the first one created.
|
Constructor and Description |
---|
ClientAppManagerImpl(I2PAppContext ctx) |
Constructor and Description |
---|
UrlLauncher(I2PAppContext context,
ClientAppManager mgr,
String[] args)
ClientApp constructor used from clients.config
|
Constructor and Description |
---|
BOB(I2PAppContext context,
ClientAppManager mgr,
String[] args)
For ClientApp interface.
|
Modifier and Type | Method and Description |
---|---|
I2PSession |
I2PSimpleClient.createSession(I2PAppContext context,
Properties options)
Create a new session (though do not connect it yet)
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
I2PSessionImpl._context
used to separate things out so we can get rid of singletons
|
protected I2PAppContext |
HandlerImpl._context |
Modifier and Type | Method and Description |
---|---|
(package private) I2PAppContext |
I2PSessionImpl.getContext()
For Subsessions
|
Modifier and Type | Method and Description |
---|---|
I2PSession |
I2PClientImpl.createSession(I2PAppContext context,
InputStream destKeyStream,
Properties options)
Create a new session (though do not connect it yet)
|
Constructor and Description |
---|
BWLimitsMessageHandler(I2PAppContext ctx) |
DestReplyMessageHandler(I2PAppContext ctx) |
DisconnectMessageHandler(I2PAppContext context) |
HandlerImpl(I2PAppContext context,
int type) |
HostReplyMessageHandler(I2PAppContext ctx) |
I2CPMessageProducer(I2PAppContext context) |
I2PClientMessageHandlerMap(I2PAppContext context) |
I2PSessionDemultiplexer(I2PAppContext ctx) |
I2PSessionImpl(I2PAppContext context,
InputStream destKeyStream,
Properties options)
Create a new session, reading the Destination, PrivateKey, and SigningPrivateKey
from the destKeyStream, and using the specified options to connect to the router
As of 0.9.19, defaults in options are honored.
|
I2PSessionImpl(I2PAppContext context,
Properties options,
I2PClientMessageHandlerMap handlerMap)
for extension by SimpleSession (no dest)
|
I2PSessionImpl2(I2PAppContext ctx,
InputStream destKeyStream,
Properties options)
for extension by I2PSessionMuxedImpl
Create a new session, reading the Destination, PrivateKey, and SigningPrivateKey
from the destKeyStream, and using the specified options to connect to the router
|
I2PSessionImpl2(I2PAppContext context,
Properties options,
I2PClientMessageHandlerMap handlerMap)
for extension by SimpleSession (no dest)
|
I2PSessionMuxedImpl(I2PAppContext ctx,
InputStream destKeyStream,
Properties options) |
I2PSimpleSession(I2PAppContext context,
Properties options)
Create a new session for doing naming and bandwidth queries only.
|
MessagePayloadMessageHandler(I2PAppContext context) |
MessageState(I2PAppContext ctx,
long nonce,
I2PSession session,
long expires,
SendMessageStatusListener listener)
For asynchronous notification
|
MessageState(I2PAppContext ctx,
long nonce,
String prefix)
For synchronous waiting for accept with waitForAccept().
|
MessageStatusMessageHandler(I2PAppContext context) |
RequestLeaseSetMessageHandler(I2PAppContext context) |
RequestLeaseSetMessageHandler(I2PAppContext context,
int messageType)
For extension
|
RequestVariableLeaseSetMessageHandler(I2PAppContext context) |
SessionIdleTimer(I2PAppContext context,
I2PSessionImpl session,
boolean reduce,
boolean shutdown)
reduce, shutdown, or both must be true
|
SessionStatusMessageHandler(I2PAppContext context) |
SetDateMessageHandler(I2PAppContext ctx) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
NamingService._context |
Modifier and Type | Method and Description |
---|---|
static NamingService |
NamingService.createInstance(I2PAppContext context)
WARNING - for use by I2PAppContext only - others must use
I2PAppContext.namingService()
Get a naming service instance.
|
(package private) static Destination |
LookupDest.lookupBase32Hash(I2PAppContext ctx,
String key) |
(package private) static Destination |
LookupDest.lookupHash(I2PAppContext ctx,
byte[] h) |
Constructor and Description |
---|
BlockfileNamingService(I2PAppContext context)
Opens the database at hostsdb.blockfile or creates a new
one and imports entries from hosts.txt, userhosts.txt, and privatehosts.txt.
|
DummyNamingService(I2PAppContext context)
The naming service should only be constructed and accessed through the
application context.
|
EepGetAndAddNamingService(I2PAppContext context)
Deprecated.
|
EepGetNamingService(I2PAppContext context)
The naming service should only be constructed and accessed through the
application context.
|
HostsTxtNamingService(I2PAppContext context)
The naming service should only be constructed and accessed through the
application context.
|
LookupDest(I2PAppContext context) |
MetaNamingService(I2PAppContext context)
Adds the services from the i2p.nameservicelist property, in order, as chained services.
|
MetaNamingService(I2PAppContext context,
List<NamingService> services) |
NamingService(I2PAppContext context)
The naming service should only be constructed and accessed through the
application context.
|
SingleFileNamingService(I2PAppContext context,
String filename) |
Modifier and Type | Method and Description |
---|---|
void |
I2PSocketManager.init(I2PAppContext context,
I2PSession session,
Properties opts,
String name)
Deprecated - Factory will initialize.
|
Constructor and Description |
---|
I2PSocketEepGet(I2PAppContext ctx,
I2PSocketManager mgr,
int numRetries,
long minSize,
long maxSize,
String outputFile,
OutputStream outputStream,
String url) |
I2PSocketEepGet(I2PAppContext ctx,
I2PSocketManager mgr,
int numRetries,
String outputFile,
String url) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
SchedulerImpl._context |
Modifier and Type | Method and Description |
---|---|
void |
I2PSocketManagerFull.init(I2PAppContext context,
I2PSession session,
Properties opts,
String name)
Deprecated.
use 4-arg constructor
|
boolean |
Packet.verifySignature(I2PAppContext ctx,
Destination from,
byte[] buffer)
Determine whether the signature on the data is valid.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
AESEngine._context |
Modifier and Type | Method and Description |
---|---|
(package private) static byte[] |
ElGamalAESEngine.getPadding(I2PAppContext context,
int curSize,
long minPaddedSize)
Return random bytes for padding the data to a mod 16 size so that it is
at least minPaddedSize
|
static boolean |
CertUtil.isRevoked(I2PAppContext ctx,
Certificate cert)
Is the certificate revoked?
This loads the CRLs from disk.
|
static CertStore |
CertUtil.loadCRLs(I2PAppContext ctx)
Load CRLs from standard locations.
|
Constructor and Description |
---|
AESEngine(I2PAppContext ctx) |
CryptixAESEngine(I2PAppContext context) |
DSAEngine(I2PAppContext context) |
ElGamalAESEngine(I2PAppContext ctx) |
ElGamalEngine(I2PAppContext context)
The ElGamal engine should only be constructed and accessed through the
application context.
|
HMAC256Generator(I2PAppContext context) |
HMACGenerator(I2PAppContext context) |
KeyGenerator(I2PAppContext context) |
SessionKeyManager(I2PAppContext context)
A dummy SessionKeyManager for testing or for passing to
ElGamalAESEngine.decrypt()
|
SHA256Generator(I2PAppContext context) |
SU3File(I2PAppContext context,
File file) |
TrustedUpdate(I2PAppContext context)
Constructs a new
TrustedUpdate with the given
I2PAppContext . |
YKGenerator(I2PAppContext context)
Caller must also call start() to start the background precalc thread.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
I2NPMessageImpl._context |
Modifier and Type | Method and Description |
---|---|
I2NPMessage |
I2NPMessageImpl.Builder.build(I2PAppContext ctx)
instantiate a new I2NPMessage to be populated shortly
|
static EncryptedBuildRecord |
BuildResponseRecord.create(I2PAppContext ctx,
int status,
SessionKey replyKey,
byte[] replyIV,
long responseMessageId)
Create a new encrypted response
|
static I2NPMessage |
I2NPMessageImpl.createMessage(I2PAppContext context,
int type)
Yes, this is fairly ugly, but its the only place it ever happens.
|
EncryptedBuildRecord |
BuildRequestRecord.encryptRecord(I2PAppContext ctx,
PublicKey toKey,
Hash toPeer)
Encrypt the record to the specified peer.
|
static I2NPMessage |
I2NPMessageImpl.fromRawByteArray(I2PAppContext ctx,
byte[] buffer,
int offset,
int len,
I2NPMessageHandler handler)
Read the message with a short 5-byte header.
|
Constructor and Description |
---|
BuildRequestRecord(I2PAppContext ctx,
long receiveTunnelId,
Hash peer,
long nextTunnelId,
Hash nextHop,
long nextMsgId,
SessionKey layerKey,
SessionKey ivKey,
SessionKey replyKey,
byte[] iv,
boolean isInGateway,
boolean isOutEndpoint)
Populate this instance with data.
|
BuildRequestRecord(I2PAppContext ctx,
PrivateKey ourKey,
EncryptedBuildRecord encryptedRecord)
Decrypt the data from the specified record, writing the decrypted record into this instance's
data buffer
Caller MUST check that first 16 bytes of our hash matches first 16 bytes of encryptedRecord
before calling this.
|
DatabaseLookupMessage(I2PAppContext context) |
DatabaseLookupMessage(I2PAppContext context,
boolean locallyCreated) |
DatabaseSearchReplyMessage(I2PAppContext context) |
DatabaseStoreMessage(I2PAppContext context) |
DataMessage(I2PAppContext context) |
DeliveryStatusMessage(I2PAppContext context) |
FastI2NPMessageImpl(I2PAppContext context) |
GarlicClove(I2PAppContext context) |
GarlicMessage(I2PAppContext context) |
I2NPMessageHandler(I2PAppContext context) |
I2NPMessageImpl(I2PAppContext context) |
TunnelBuildMessage(I2PAppContext context) |
TunnelBuildMessage(I2PAppContext context,
int records) |
TunnelBuildMessageBase(I2PAppContext context) |
TunnelBuildMessageBase(I2PAppContext context,
int records) |
TunnelBuildReplyMessage(I2PAppContext context) |
TunnelBuildReplyMessage(I2PAppContext context,
int records) |
TunnelDataMessage(I2PAppContext context) |
TunnelGatewayMessage(I2PAppContext context) |
UnknownI2NPMessage(I2PAppContext context,
int type) |
VariableTunnelBuildMessage(I2PAppContext context)
zero record count, will be set with readMessage()
|
VariableTunnelBuildMessage(I2PAppContext context,
int records) |
VariableTunnelBuildReplyMessage(I2PAppContext context)
zero record count, will be set with readMessage()
|
VariableTunnelBuildReplyMessage(I2PAppContext context,
int records) |
Constructor and Description |
---|
RouterKeyGenerator(I2PAppContext context) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
TrayManager._appContext |
Constructor and Description |
---|
ExternalTrayManager(I2PAppContext ctx,
Main main,
boolean useSwing) |
TrayManager(I2PAppContext ctx,
Main main,
boolean useSwing)
Instantiate tray manager.
|
Modifier and Type | Method and Description |
---|---|
static String |
DesktopguiTranslator._t(I2PAppContext ctx,
String s) |
static String |
DesktopguiTranslator._t(I2PAppContext ctx,
String s,
Object o) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
I2PTunnelClientBase._context |
Modifier and Type | Method and Description |
---|---|
I2PAppContext |
I2PTunnel.getContext() |
Modifier and Type | Method and Description |
---|---|
protected static String |
I2PTunnelHTTPClientBase.getErrorPage(I2PAppContext ctx,
String base,
String backup)
foo => errordir/foo-header_xx.ht for lang xx, or errordir/foo-header.ht,
or the backup byte array on fail.
|
(package private) static Map<String,List<String>> |
I2PTunnelHTTPServer.readHeaders(I2PSocket socket,
InputStream in,
StringBuilder command,
String[] skipHeaders,
I2PAppContext ctx)
From I2P to server: socket non-null, in null.
|
Constructor and Description |
---|
TunnelControllerGroup(I2PAppContext context,
ClientAppManager mgr,
String[] args)
Instantiation only.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
SOCKSServer._context |
Modifier and Type | Method and Description |
---|---|
static SOCKSServer |
SOCKSServerFactory.createSOCKSServer(I2PAppContext ctx,
Socket s,
Properties props)
Create a new SOCKS server, using the provided socket (that must
be connected to a client) to select the proper SOCKS protocol
version.
|
Constructor and Description |
---|
SOCKS4aServer(I2PAppContext ctx,
Socket clientSock,
Properties props)
Create a SOCKS4a server that communicates with the client using
the specified socket.
|
SOCKS5Server(I2PAppContext ctx,
Socket clientSock,
Properties props)
Create a SOCKS5 server that communicates with the client using
the specified socket.
|
SOCKSServer(I2PAppContext ctx,
Socket clientSock,
Properties props) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
I2PTunnelUDPClientBase._context |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
TunnelConfig._context |
Modifier and Type | Method and Description |
---|---|
protected static String |
GeneralHelper._t(String key,
I2PAppContext context) |
static List<String> |
GeneralHelper.deleteTunnel(I2PAppContext context,
TunnelControllerGroup tcg,
int tunnel,
String privKeyFile)
Stop the tunnel, delete from config,
rename the private key file if in the default directory
|
protected static List<String> |
GeneralHelper.saveConfig(I2PAppContext context,
TunnelControllerGroup tcg) |
static List<String> |
GeneralHelper.saveTunnel(I2PAppContext context,
TunnelControllerGroup tcg,
int tunnel,
TunnelConfig config) |
Constructor and Description |
---|
GeneralHelper(I2PAppContext context,
TunnelControllerGroup tcg) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
IndexBean._context |
Modifier and Type | Method and Description |
---|---|
static String |
Messages._t(String key,
I2PAppContext ctx) |
static String |
Messages.ngettext(String s,
String p,
int n,
I2PAppContext ctx)
translate (ngettext)
|
Constructor and Description |
---|
I2PLogger(I2PAppContext ctx) |
JettyStart(I2PAppContext context,
ClientAppManager mgr,
String[] args)
All args must be XML file names.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
RandomTrimmer._ctx |
Constructor and Description |
---|
KBucketImpl(I2PAppContext context,
int begin,
int end,
int max,
KBucketTrimmer<T> trimmer)
All entries in this bucket will have at least one bit different
from us in the range [begin, end] inclusive.
|
KBucketSet(I2PAppContext context,
T us,
int max,
int b)
Use the default trim strategy, which removes a random entry.
|
KBucketSet(I2PAppContext context,
T us,
int max,
int b,
KBucketTrimmer<T> trimmer)
Use the supplied trim strategy.
|
RandomIfOldTrimmer(I2PAppContext ctx,
int max) |
RandomTrimmer(I2PAppContext ctx,
int max) |
Modifier and Type | Class and Description |
---|---|
class |
RouterContext
Build off the core I2P context to provide a root for a router instance to
coordinate its resources.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
TransientSessionKeyManager._context |
Constructor and Description |
---|
TransientSessionKeyManager(I2PAppContext context)
The session key manager should only be constructed and accessed through the
application context.
|
TransientSessionKeyManager(I2PAppContext context,
int tagsToSend,
int lowThreshold) |
Constructor and Description |
---|
GarlicMessageParser(I2PAppContext context) |
Modifier and Type | Method and Description |
---|---|
static boolean |
PersistNews.delete(I2PAppContext ctx,
NewsEntry entry)
Unused for now, as we don't have any way to remember it's deleted.
|
static List<NewsEntry> |
PersistNews.load(I2PAppContext ctx)
This does not check for any missing values.
|
static boolean |
PersistNews.store(I2PAppContext ctx,
List<Node> entries)
Store each entry.
|
boolean |
BlocklistEntries.verify(I2PAppContext ctx) |
Constructor and Description |
---|
NewsManager(I2PAppContext ctx,
ClientAppManager listener,
String[] args) |
NewsXMLParser(I2PAppContext ctx) |
XMLParser(I2PAppContext ctx) |
Modifier and Type | Method and Description |
---|---|
static File |
ClientAppConfig.configFile(I2PAppContext ctx) |
Modifier and Type | Method and Description |
---|---|
static boolean |
ThreadDump.dump(I2PAppContext context,
int secondsToWait)
Signal the wrapper to asynchronously dump threads to wrapper.log.
|
Constructor and Description |
---|
RouterTimestamper(I2PAppContext ctx)
Does not start.
|
RouterTimestamper(I2PAppContext ctx,
Timestamper.UpdateListener lsnr)
Does not start.
|
RouterTimestamper(I2PAppContext ctx,
Timestamper.UpdateListener lsnr,
boolean daemon)
Does not start.
|
Zones(I2PAppContext ctx)
Reads in the file in the constructor,
so hold onto this.
|
Modifier and Type | Method and Description |
---|---|
static String[] |
GeoIPv6.readGeoIPFile(I2PAppContext context,
Long[] search,
Map<String,String> codeCache)
Lookup search items in the geoip file.
|
Constructor and Description |
---|
FIFOBandwidthLimiter(I2PAppContext context) |
FIFOBandwidthRefiller(I2PAppContext context,
FIFOBandwidthLimiter limiter) |
GeoIP(I2PAppContext context) |
UPnP(I2PAppContext context) |
Constructor and Description |
---|
DHSessionKeyBuilder(I2PAppContext ctx)
Create a new public/private value pair for the DH exchange.
|
PrecalcRunner(I2PAppContext ctx) |
Constructor and Description |
---|
NTCPSendFinisher(I2PAppContext context,
NTCPTransport transport) |
Constructor and Description |
---|
OutboundMessageState(I2PAppContext context,
I2NPMessage msg,
PeerState peer)
"injected" message from the establisher.
|
OutboundMessageState(I2PAppContext context,
OutNetMessage m,
PeerState peer)
Normal constructor.
|
UDPPacketReader(I2PAppContext ctx) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
HopProcessor._context |
Modifier and Type | Method and Description |
---|---|
static void |
BuildMessageGenerator.createRecord(int recordNum,
int hop,
TunnelBuildMessage msg,
TunnelCreatorConfig cfg,
Hash replyRouter,
long replyTunnel,
I2PAppContext ctx,
PublicKey peerKey)
Place the asymmetrically encrypted record in the specified record slot,
containing the hop's configuration (as well as the reply info, if it is an outbound endpoint)
|
(package private) static void |
OutboundGatewayProcessor.decrypt(I2PAppContext ctx,
byte[] iv,
byte[] orig,
int offset,
int length,
byte[] cur,
HopConfig config)
Undo the crypto for a single hop.
|
static void |
BuildMessageGenerator.layeredEncrypt(I2PAppContext ctx,
TunnelBuildMessage msg,
TunnelCreatorConfig cfg,
List<Integer> order)
Encrypt the records so their hop ident is visible at the appropriate times.
|
Constructor and Description |
---|
BuildMessageProcessor(I2PAppContext ctx) |
BuildReplyHandler(I2PAppContext context) |
FragmentedMessage(I2PAppContext ctx,
long messageId) |
HopProcessor(I2PAppContext ctx,
HopConfig config)
Deprecated.
used only by unit tests
|
HopProcessor(I2PAppContext ctx,
HopConfig config,
IVValidator validator) |
InboundGatewayProcessor(I2PAppContext ctx,
HopConfig config) |
InboundSender(I2PAppContext ctx,
HopConfig config) |
OutboundGatewayProcessor(I2PAppContext ctx,
TunnelCreatorConfig cfg) |
OutboundSender(I2PAppContext ctx,
TunnelCreatorConfig config) |
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
PriBlockingQueue._context |
protected I2PAppContext |
DecayingBloomFilter._context |
Constructor and Description |
---|
CoDelBlockingQueue(I2PAppContext ctx,
String name,
int capacity) |
CoDelPriorityBlockingQueue(I2PAppContext ctx,
String name,
int initialCapacity) |
DecayingBloomFilter(I2PAppContext context,
int durationMs,
int entryBytes)
Create a bloom filter that will decay its entries over time.
|
DecayingBloomFilter(I2PAppContext context,
int durationMs,
int entryBytes,
String name)
Uses default m of 23, memory usage is 2 MB.
|
DecayingBloomFilter(I2PAppContext context,
int durationMs,
int entryBytes,
String name,
int m)
Memory usage is 2 * (2**m) bits or 2**(m-2) bytes.
|
DecayingBloomFilter(int durationMs,
int entryBytes,
String name,
I2PAppContext context)
only for extension by DHS
|
DecayingHashSet(I2PAppContext context,
int durationMs,
int entryBytes)
Create a double-buffered hash set that will decay its entries over time.
|
DecayingHashSet(I2PAppContext context,
int durationMs,
int entryBytes,
String name) |
EventLog(I2PAppContext ctx,
File file) |
PriBlockingQueue(I2PAppContext ctx,
String name,
int initialCapacity)
Bounded queue with a hardcoded failsafe max size,
except when using put(), which is unbounded.
|
Modifier and Type | Method and Description |
---|---|
(package private) static String |
SummaryListener.createName(I2PAppContext ctx,
String wanted)
JRobin can only deal with 20 character data source names, so we need to create a unique,
munged version from the user/developer-visible name.
|
static String |
NavHelper.getClientAppLinks(I2PAppContext ctx)
Translated string is loaded by PluginStarter
|
(package private) static List<HomeHelper.App> |
NavHelper.getClientApps(I2PAppContext ctx)
For HomeHelper
|
static String |
Messages.getDisplayLanguage(String langCode,
String dflt,
I2PAppContext ctx)
Return the "display language", e.g.
|
(package private) static String |
NewsFeedHelper.getEntries(I2PAppContext ctx,
int start,
int max,
long ageLimit) |
static String |
ConfigUpdateHelper.getNewsURL(I2PAppContext ctx)
hack to replace the old news location with the new one, even if they have saved
the update page at some point
|
static Map<String,String> |
PluginStarter.getPluginKeys(I2PAppContext ctx)
The signing keys from all the plugins
|
static String |
Messages.getString(int n,
String s,
String p,
I2PAppContext ctx)
translate (ngettext) @since 0.7.14
|
static String |
Messages.getString(String key,
I2PAppContext ctx)
lang in routerconsole.lang property, else current locale
|
static String |
Messages.getString(String s,
Object o,
I2PAppContext ctx)
translate a string with a parameter
This is a lot more expensive than getString(s, ctx), so use sparingly.
|
static String |
Messages.getString(String s,
Object o,
Object o2,
I2PAppContext ctx)
two params @since 0.7.14
|
static Properties |
PluginStarter.pluginProperties(I2PAppContext ctx,
String appName)
plugin.config
|
(package private) static boolean |
PluginStarter.pluginsEnabled(I2PAppContext ctx) |
static int |
ConfigUpdateHandler.proxyPort(I2PAppContext ctx)
Convenience method for updaters
|
static void |
SummaryRenderer.render(I2PAppContext ctx,
OutputStream out,
String filename)
Deprecated.
unused
|
static Properties |
RouterConsoleRunner.webAppProperties(I2PAppContext ctx) |
static File |
LogsHelper.wrapperLogFile(I2PAppContext ctx)
Does not necessarily exist.
|
Constructor and Description |
---|
LocaleWebAppHandler(I2PAppContext ctx,
String path,
String warPath,
File tmpdir,
ServletHandler servletHandler) |
SummaryRenderer(I2PAppContext ctx,
SummaryListener lsnr) |
Constructor and Description |
---|
SAMBridge(I2PAppContext context,
ClientAppManager mgr,
String[] args)
For ClientApp interface.
|
Constructor and Description |
---|
SAMEventHandler(I2PAppContext ctx) |
SAMReader(I2PAppContext context,
InputStream samIn,
SAMReader.SAMClientEventListener listener) |
SAMStreamSend(I2PAppContext ctx,
String samHost,
String samPort,
String destFile,
String dataFile) |
SAMStreamSink(I2PAppContext ctx,
String samHost,
String samPort,
String destFile,
String sinkDir) |
Constructor and Description |
---|
BufferedStatLog(I2PAppContext ctx) |
StatManager(I2PAppContext context)
The stat manager should only be constructed and accessed through the
application context.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
RandomSource._context |
protected I2PAppContext |
EepGet._context |
protected I2PAppContext |
Clock._context |
Modifier and Type | Method and Description |
---|---|
(package private) I2PAppContext |
LogManager.getContext()
Convenience method for LogRecordFormatter
|
Modifier and Type | Method and Description |
---|---|
static String |
Translate.getCountry(I2PAppContext ctx)
Two-letter upper case or ""
|
static String |
Translate.getDisplayLanguage(String langCode,
String dflt,
I2PAppContext ctx,
String bun)
Return the "display language", e.g.
|
static String |
Translate.getLanguage(I2PAppContext ctx)
Two- or three-letter lower case
|
static String |
Translate.getString(int n,
String s,
String p,
I2PAppContext ctx,
String bun)
Use GNU ngettext
For .po file format see http://www.gnu.org/software/gettext/manual/gettext.html.gz#Translating-plural-forms
|
static String |
Translate.getString(String key,
I2PAppContext ctx,
String bun)
lang in routerconsole.lang property, else current locale
|
static String |
Translate.getString(String s,
I2PAppContext ctx,
String bun,
Object... oArray)
Varargs
|
static String |
Translate.getString(String s,
Object o,
I2PAppContext ctx,
String bun)
translate a string with a parameter
This is a lot more expensive than getString(s, ctx), so use sparingly.
|
static String |
Translate.getString(String s,
Object o,
Object o2,
I2PAppContext ctx,
String bun)
for {0} and {1}
|
static TimeZone |
SystemVersion.getSystemTimeZone(I2PAppContext ctx)
The system's time zone, which is probably different from the
JVM time zone, because Router changes the JVM default to GMT.
|
static void |
I2PSSLSocketFactory.verifyHostname(I2PAppContext ctx,
SSLSocket socket,
String host)
Validate the hostname
ref: https://developer.android.com/training/articles/security-ssl.html
ref: http://op-co.de/blog/posts/java_sslsocket_mitm/
ref: http://kevinlocke.name/bits/2012/10/03/ssl-certificate-verification-in-dispatch-and-asynchttpclient/
|
Constructor and Description |
---|
Clock(I2PAppContext context) |
EepGet(I2PAppContext ctx,
boolean shouldProxy,
String proxyHost,
int proxyPort,
int numRetries,
long minSize,
long maxSize,
String outputFile,
OutputStream outputStream,
String url,
boolean allowCaching,
String etag,
String postData) |
EepGet(I2PAppContext ctx,
boolean shouldProxy,
String proxyHost,
int proxyPort,
int numRetries,
long minSize,
long maxSize,
String outputFile,
OutputStream outputStream,
String url,
boolean allowCaching,
String etag,
String lastModified,
String postData) |
EepGet(I2PAppContext ctx,
boolean shouldProxy,
String proxyHost,
int proxyPort,
int numRetries,
String outputFile,
String url) |
EepGet(I2PAppContext ctx,
boolean shouldProxy,
String proxyHost,
int proxyPort,
int numRetries,
String outputFile,
String url,
boolean allowCaching,
String etag) |
EepGet(I2PAppContext ctx,
boolean shouldProxy,
String proxyHost,
int proxyPort,
int numRetries,
String outputFile,
String url,
boolean allowCaching,
String etag,
String lastModified) |
EepGet(I2PAppContext ctx,
boolean shouldProxy,
String proxyHost,
int proxyPort,
int numRetries,
String outputFile,
String url,
String postData) |
EepGet(I2PAppContext ctx,
int numRetries,
String outputFile,
String url) |
EepGet(I2PAppContext ctx,
int numRetries,
String outputFile,
String url,
boolean allowCaching) |
EepGet(I2PAppContext ctx,
String proxyHost,
int proxyPort,
int numRetries,
String outputFile,
String url) |
EepGet(I2PAppContext ctx,
String proxyHost,
int proxyPort,
int numRetries,
String outputFile,
String url,
boolean allowCaching) |
EepHead(I2PAppContext ctx,
String proxyHost,
int proxyPort,
int numRetries,
String url) |
Executor(I2PAppContext ctx,
Log log,
List<SimpleTimer.TimedEvent> events,
SimpleStore x) |
FortunaRandomSource(I2PAppContext context)
May block up to 10 seconds or forever
|
I2PSSLSocketFactory(I2PAppContext context,
boolean loadSystemCerts,
String relativeCertPath) |
LogConsoleBuffer(I2PAppContext context)
Uses default limit from LogManager.
|
LogManager(I2PAppContext context) |
PartialEepGet(I2PAppContext ctx,
String proxyHost,
int proxyPort,
OutputStream outputStream,
String url,
long size)
Instantiate an EepGet that will fetch exactly size bytes when fetch() is called.
|
PasswordManager(I2PAppContext ctx) |
PortMapper(I2PAppContext context) |
RandomSource(I2PAppContext context)
Deprecated - do not instantiate this directly, as you won't get the
good one (Fortuna).
|
SimpleScheduler(I2PAppContext context)
Deprecated.
in 0.9.20, replaced by SimpleTimer2
|
SimpleTimer(I2PAppContext context)
Deprecated.
use SimpleTimer2
|
SimpleTimer2(I2PAppContext context)
To be instantiated by the context.
|
SimpleTimer2(I2PAppContext context,
String name)
To be instantiated by the context.
|
SimpleTimer2(I2PAppContext context,
String name,
boolean prestartAllThreads)
To be instantiated by the context.
|
SSLEepGet(I2PAppContext ctx,
OutputStream outputStream,
String url)
A new SSLEepGet with a new SSLState
|
SSLEepGet(I2PAppContext ctx,
OutputStream outputStream,
String url,
SSLEepGet.SSLState state) |
SSLEepGet(I2PAppContext ctx,
String outputFile,
String url)
A new SSLEepGet with a new SSLState
|
SSLEepGet(I2PAppContext ctx,
String outputFile,
String url,
SSLEepGet.SSLState state) |
TranslateReader(I2PAppContext ctx,
String bundle,
InputStream in) |
Modifier and Type | Method and Description |
---|---|
static void |
Debug.initialize(I2PAppContext ctx)
I2P this is all static so have the UPnPManager call this
|
Modifier and Type | Method and Description |
---|---|
I2PAppContext |
I2PSnarkUtil.getContext() |
Constructor and Description |
---|
I2PSnarkUtil(I2PAppContext ctx) |
I2PSnarkUtil(I2PAppContext ctx,
String baseName) |
SnarkManager(I2PAppContext ctx)
For embedded.
|
SnarkManager(I2PAppContext ctx,
String ctxPath,
String ctxName)
For webapp.
|
UpdateHandler(I2PAppContext ctx,
UpdateManager umgr,
SnarkManager smgr) |
UpdateRunner(I2PAppContext ctx,
UpdateManager umgr,
SnarkManager smgr,
UpdateType type,
List<URI> uris,
String newVersion) |
Constructor and Description |
---|
DHTNodes(I2PAppContext ctx,
NID me) |
DHTTracker(I2PAppContext ctx) |
KBTrimmer(I2PAppContext ctx,
int max) |
KRPC(I2PAppContext ctx,
String baseName,
I2PSession session) |
MsgID(I2PAppContext ctx)
outgoing - generate a random ID
|
Token(I2PAppContext ctx)
outgoing - generate a random token
|
Token(I2PAppContext ctx,
byte[] data)
incoming - save the token (arbitrary length)
|
Modifier and Type | Method and Description |
---|---|
static String |
ConfigUIHelper.getLangSettings(I2PAppContext ctx)
Standalone (app context) only.
|
Modifier and Type | Field and Description |
---|---|
protected I2PAppContext |
BasicServlet._context |
Constructor and Description |
---|
FetchAndAdd(I2PAppContext ctx,
SnarkManager mgr,
String url,
File dataDir)
Caller should call _mgr.addDownloader(this), which
will start things off.
|