Uses of Class
net.i2p.router.RouterContext
Package
Description
This package defines the low-level messages sent between routers,
called the Invisible Internet Network Protocol (I2NP).
Desktopgui is a graphical interface to I2P that allows managing the lifecycle of I2P from the system tray.
The I2P router application handles the I2P network communication.
Implements the router side of the I2CP interface,
which is the API for applications to send and receive data through the router.
Classes formerly in net.i2p.crypto but moved here as they are only used by the router.
Implementation of ECIES-X25519-AEAD-Ratchet (proposal 144).
Dummy versions of things for testing.
Creates and parses garlic messages.
A couple of classes, but most things are in kademlia.
The network database, including implementation of floodfills.
Fetching, validation, unpacking, and installation of RouterInfos from
signed su3 files, unsigned zip files, and web indexes.
The peer manager logs information about the history and quality of network peers.
The I2P startup package loads the configuration when I2P is started.
Classes to run offline Sybil analysis, and to
store and load the results.
Miscellaneous classes, mostly things that are executed periodically as
Jobs, Threads, and SimpleTimer.TimedEvents.
The transport system allows the usage of communication layers that are below I2P in the stack, on which I2P messages are sent.
The NTCP transport allows passing I2P messages on top of TCP.
The UDP transport (also known as 'SSU transport') allows passing I2P messages on top of UDP.
All the work of managing locally created and participating tunnels,
creating and handling tunnel messages, and their encryption.
Tunnel creation, tunnel build message handling.
Classes to implement the update process.
These classes define the several useful utilities used
throughout the router.
The router console user interface, implemented in routerconsole.jar, with these classes
supporting the webapp in routerconsole.war.
Helpers and handlers for the router console user interface,
with these classes supporting the webapp in routerconsole.war.
-
Uses of RouterContext in net.i2p.data.i2np
Modifier and TypeMethodDescriptionBuildRequestRecord.encryptECIESRecord
(RouterContext ctx, PublicKey toKey, Hash toPeer) Encrypt the record to the specified peer.ModifierConstructorDescriptionBuildRequestRecord
(RouterContext 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. -
Uses of RouterContext in net.i2p.desktopgui
ModifierConstructorDescriptionInternalTrayManager
(RouterContext ctx, Main main, boolean useSwing) Main
(RouterContext ctx, ClientAppManager mgr, String[] args) -
Uses of RouterContext in net.i2p.desktopgui.router
Modifier and TypeMethodDescriptionstatic void
RouterManager.cancelShutdown
(RouterContext ctx) Cancel a graceful shutdown or restartstatic long
RouterManager.getShutdownTimeRemaining
(RouterContext ctx) Get time until shutdownstatic String
RouterManager.getStatus
(RouterContext ctx) Get network status, untranslatedstatic boolean
RouterManager.isShutdownInProgress
(RouterContext ctx) Is a graceful shutdown or restart in progress?static void
RouterManager.restart
(RouterContext ctx) Restart the running I2P instance.static void
RouterManager.restartGracefully
(RouterContext ctx) Restart the running I2P instance.static void
RouterManager.shutDown
(RouterContext ctx) Stop the running I2P instance.static void
RouterManager.shutDownGracefully
(RouterContext ctx) Stop the running I2P instance. -
Uses of RouterContext in net.i2p.i2pcontrol
ModifierConstructorDescriptionI2PControlController
(RouterContext ctx, ClientAppManager mgr, String[] args) RouterApp (new way)SocketController
(RouterContext ctx, ClientAppManager mgr, String[] args) RouterApp (new way) -
Uses of RouterContext in net.i2p.i2pcontrol.servlets
-
Uses of RouterContext in net.i2p.i2pcontrol.servlets.jsonrpc2handlers
ModifierConstructorDescriptionAdvancedSettingsHandler
(RouterContext ctx, JSONRPC2Helper helper) I2PControlHandler
(RouterContext ctx, JSONRPC2Helper helper, SecurityManager secMan) NetworkSettingHandler
(RouterContext ctx, JSONRPC2Helper helper) RouterInfoHandler
(RouterContext ctx, JSONRPC2Helper helper) RouterManagerHandler
(RouterContext ctx, JSONRPC2Helper helper) -
Uses of RouterContext in net.i2p.router
Modifier and TypeMethodDescriptionfinal RouterContext
JobImpl.getContext()
Router.getContext()
Non-null, but take care when accessing context items before runRouter() is called as the context will not be initialized.Modifier and TypeMethodDescription(package private) static List<RouterContext>
RouterContext.getContexts()
Same as listContexts() but package private and modifiable.static List<RouterContext>
RouterContext.listContexts()
Retrieve the list of router contexts currently instantiated in this JVM.Modifier and TypeMethodDescription(package private) static boolean
RouterContext.setGlobalContext
(RouterContext ctx) Sets the default context, unless there is one already.ModifierConstructorDescriptionBanlist
(RouterContext context) Blocklist
(RouterContext context) Router MUST call startup()ClientMessagePool
(RouterContext context) InNetMessagePool
(RouterContext context) JobImpl
(RouterContext context) JobQueue
(RouterContext context) Does not start the pumper.JobQueueRunner
(RouterContext context, int id) JobTiming
(RouterContext context) KeyManager
(RouterContext context) MessageHistory
(RouterContext context) MessageValidator
(RouterContext context) OutNetMessage
(RouterContext context) Null msg and target, zero expiration (used in OutboundMessageRegistry only)OutNetMessage
(RouterContext context, I2NPMessage msg, long expiration, int priority, RouterInfo target) Standard constructorOutNetMessagePool
(RouterContext context) RouterClock
(RouterContext context) Does not start.RouterDoSThrottle
(RouterContext context) Deprecated.RouterThrottleImpl
(RouterContext context) StatisticsManager
(RouterContext context) -
Uses of RouterContext in net.i2p.router.client
Modifier and TypeFieldDescriptionprotected final RouterContext
ClientConnectionRunner._context
protected final RouterContext
ClientListenerRunner._context
protected final RouterContext
ClientMessageEventListener._context
protected final RouterContext
ClientManager._ctx
ModifierConstructorDescriptionClientConnectionRunner
(RouterContext context, ClientManager manager, Socket socket) Create a new runner against the given socketClientListenerRunner
(RouterContext context, ClientManager manager, int port) ClientManager
(RouterContext context, int port) Does not start the listeners.ClientManagerFacadeImpl
(RouterContext context) ClientMessageEventListener
(RouterContext context, ClientConnectionRunner runner, boolean enforceAuth) ClientWriterRunner
(RouterContext context, ClientConnectionRunner runner) CreateSessionJob
(RouterContext context, SessionConfig config) LookupDestJob
(RouterContext context, ClientConnectionRunner runner, long reqID, long timeout, SessionId sessID, Hash h, String name, Hash fromLocalDest) One of h or name non-null.LookupDestJob
(RouterContext context, ClientConnectionRunner runner, Hash h, Hash fromLocalDest) MessageReceivedJob
(RouterContext ctx, ClientConnectionRunner runner, Destination toDest, Destination fromDest, Payload payload, boolean sendDirect) QueuedClientConnectionRunner
(RouterContext context, ClientManager manager, I2CPMessageQueue queue) Create a new runner with the given queuesReportAbuseJob
(RouterContext context, ClientConnectionRunner runner, Destination dest, String reason, int severity) RequestLeaseSetJob
(RouterContext ctx, ClientConnectionRunner runner, LeaseRequestState state) SSLClientListenerRunner
(RouterContext context, ClientManager manager, int port) -
Uses of RouterContext in net.i2p.router.crypto
ModifierConstructorDescriptionFamilyKeyCrypto
(RouterContext context) For signing and verification. -
Uses of RouterContext in net.i2p.router.crypto.ratchet
ModifierConstructorDescriptionACKTimer
(RouterContext context, Destination from, Destination to) Caller must scheduleCaller MUST call startup() to get threaded generation.MuxedEngine
(RouterContext ctx) RatchetSKM
(RouterContext context) For the router SKM only.RatchetSKM
(RouterContext context, Destination dest) The session key manager is constructed and accessed through the client manager. -
Uses of RouterContext in net.i2p.router.dummy
-
Uses of RouterContext in net.i2p.router.message
Modifier and TypeMethodDescriptionstatic GarlicMessage
GarlicMessageBuilder.buildECIESMessage
(RouterContext ctx, GarlicConfig config) Encrypt from an anonymous source.(package private) static GarlicMessage
GarlicMessageBuilder.buildECIESMessage
(RouterContext ctx, GarlicConfig config, Hash from, Destination to, SessionKeyManager skm, ReplyCallback callback) ECIES_X25519 only.static GarlicMessage
GarlicMessageBuilder.buildMessage
(RouterContext ctx, GarlicConfig config, Set<SessionTag> wrappedTags, PublicKey target, SessionKey encryptKey, SessionTag encryptTag) ELGAMAL_2048 only.static GarlicMessage
GarlicMessageBuilder.buildMessage
(RouterContext ctx, GarlicConfig config, SessionKey wrappedKey, Set<SessionTag> wrappedTags, int numTagsToDeliver, int lowTagsThreshold, SessionKeyManager skm) ELGAMAL_2048 only.static GarlicMessage
GarlicMessageBuilder.buildMessage
(RouterContext ctx, GarlicConfig config, SessionKey wrappedKey, Set<SessionTag> wrappedTags, int numTagsToDeliver, SessionKeyManager skm) ELGAMAL_2048 only.static GarlicMessage
GarlicMessageBuilder.buildMessage
(RouterContext ctx, GarlicConfig config, SessionKey wrappedKey, Set<SessionTag> wrappedTags, SessionKeyManager skm) Now unused, since we have to generate a reply token first in OCMOSJ but we don't know if tags are required yet.static GarlicMessage
GarlicMessageBuilder.buildMessage
(RouterContext ctx, GarlicConfig config, SessionKey encryptKey, RatchetSessionTag encryptTag) Ratchet only.(package private) static GarlicMessage
OutboundClientMessageJobHelper.createGarlicMessage
(RouterContext ctx, long replyToken, long expiration, PublicKey recipientPK, PayloadGarlicConfig dataClove, Hash from, Destination dest, TunnelInfo replyTunnel, int tagsToSendOverride, int lowTagsOverride, SessionKey wrappedKey, Set<SessionTag> wrappedTags, boolean requireAck, LeaseSet bundledReplyLeaseSet, ReplyCallback callback) Allow the app to specify the data clove directly, which enables OutboundClientMessage to resend the same payload (including expiration and unique id) in different garlics (down different tunnels) This is called from OCMOSJstatic void
OutboundClientMessageOneShotJob.init
(RouterContext ctx) call once only(package private) static boolean
GarlicMessageBuilder.needsTags
(RouterContext ctx, PublicKey key, Hash local, int minTagOverride) ELGAMAL_2048 only.ModifierConstructorDescriptionGarlicMessageHandler
(RouterContext context) GarlicMessageParser
(RouterContext context) GarlicMessageReceiver
(RouterContext context, GarlicMessageReceiver.CloveReceiver receiver) GarlicMessageReceiver
(RouterContext context, GarlicMessageReceiver.CloveReceiver receiver, Hash clientDestination) HandleGarlicMessageJob
(RouterContext context, GarlicMessage msg, RouterIdentity from, Hash fromHash) OutboundClientMessageOneShotJob
(RouterContext ctx, OutboundCache cache, ClientMessage msg) Send it.SendMessageDirectJob
(RouterContext ctx, I2NPMessage message, Hash toPeer, int timeoutMs, int priority) SendMessageDirectJob
(RouterContext ctx, I2NPMessage message, Hash toPeer, Job onSend, ReplyJob onSuccess, Job onFail, MessageSelector selector, int timeoutMs, int priority) SendMessageDirectJob
(RouterContext ctx, I2NPMessage message, Hash toPeer, ReplyJob onSuccess, Job onFail, MessageSelector selector, int timeoutMs, int priority) -
Uses of RouterContext in net.i2p.router.networkdb
ModifierConstructorDescriptionHandleDatabaseLookupMessageJob
(RouterContext ctx, DatabaseLookupMessage receivedMessage, RouterIdentity from, Hash fromHash) -
Uses of RouterContext in net.i2p.router.networkdb.kademlia
Modifier and TypeFieldDescriptionprotected final RouterContext
KademliaNetworkDatabaseFacade._context
protected final RouterContext
PeerSelector._context
protected final RouterContext
TransientDataStore._context
Modifier and TypeMethodDescriptionMessageWrapper.generateSession
(RouterContext ctx, long expiration) Create a single key and tag, for receiving a single encrypted message, and register it with the client's session key manager, to expire in the time specified.MessageWrapper.generateSession
(RouterContext ctx, SessionKeyManager skm, long expiration, boolean forceElG) Create a single key and tag, for receiving a single encrypted message, and register it with the client's session key manager, to expire in the time specified.MessageWrapper.generateSession
(RouterContext ctx, Hash localDest, long expiration, boolean forceElG) Create a single key and tag, for receiving a single encrypted message, and register it with the client's session key manager, to expire in the time specified.static File
PersistentDataStore.getRouterInfoFile
(RouterContext ctx, Hash hash) The persistent RI file for a hash.(package private) static boolean
SearchJob.onlyQueryFloodfillPeers
(RouterContext ctx) this is now misnamed, as it is only used to determine whether to return floodfill peers only(package private) static MessageWrapper.WrappedMessage
MessageWrapper.wrap
(RouterContext ctx, I2NPMessage m, Hash from, RouterInfo to) Garlic wrap a message from a client or this router, destined for a router, to hide the contents from the OBEP.static GarlicMessage
MessageWrapper.wrap
(RouterContext ctx, I2NPMessage m, RouterInfo to) Garlic wrap a message from nobody, destined for a router, to hide the contents from the OBEP.static GarlicMessage
MessageWrapper.wrap
(RouterContext ctx, I2NPMessage m, SessionKey encryptKey, SessionTag encryptTag) Garlic wrap a message from nobody, destined for an unknown router, to hide the contents from the IBGW.static GarlicMessage
MessageWrapper.wrap
(RouterContext ctx, I2NPMessage m, SessionKey encryptKey, RatchetSessionTag encryptTag) Garlic wrap a message from nobody, destined for an unknown router, to hide the contents from the IBGW.static GarlicMessage
MessageWrapper.wrap
(RouterContext ctx, I2NPMessage m, MessageWrapper.OneTimeSession session) Garlic wrap a message from nobody, destined for an unknown router, to hide the contents from the IBGW.ModifierConstructorDescriptionBlindCache
(RouterContext ctx) Caller MUST call startup() to load persistent cache from diskDirectLookupJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash peer, RouterInfo oldRI, Job onFind, Job onFail) DirectLookupMatchJob
(RouterContext ctx, FloodSearchJob job) ExpireLeasesJob
(RouterContext ctx, KademliaNetworkDatabaseFacade facade) ExpireRoutersJob
(RouterContext ctx, KademliaNetworkDatabaseFacade facade) ExploreJob
(RouterContext context, KademliaNetworkDatabaseFacade facade, Hash key, boolean isRealExplore) Create a new search for the routingKey specifiedExploreKeySelectorJob
(RouterContext context, KademliaNetworkDatabaseFacade facade) Deprecated.FailedJob
(RouterContext enclosingContext, RouterInfo peer) FailedJob
(RouterContext enclosingContext, RouterInfo peer, boolean penalizePeer) Allow the choice as to whether failed searches should count against the peer (such as if we search for a random key)FloodfillMonitorJob
(RouterContext context, FloodfillNetworkDatabaseFacade facade) FloodfillRouterInfoFloodJob
(RouterContext context, FloodfillNetworkDatabaseFacade facade) FloodfillStoreJob
(RouterContext context, FloodfillNetworkDatabaseFacade facade, Hash key, DatabaseEntry data, Job onSuccess, Job onFailure, long timeoutMs) Send a data structure to the floodfillsFloodfillStoreJob
(RouterContext context, FloodfillNetworkDatabaseFacade facade, Hash key, DatabaseEntry data, Job onSuccess, Job onFailure, long timeoutMs, Set<Hash> toSkip) FloodfillVerifyStoreJob
(RouterContext ctx, Hash key, Hash client, long published, int type, Hash sentTo, Set<Hash> toSkip, FloodfillNetworkDatabaseFacade facade) Delay a few seconds, then start the verifyFloodOnlyLookupSelector
(RouterContext ctx, FloodOnlySearchJob search) protected
FloodOnlySearchJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash key, Job onFind, Job onFailed, int timeoutMs) For DirectLookupJob extension, RI only, different match jobFloodOnlySearchJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash key, Job onFind, Job onFailed, int timeoutMs, boolean isLease) FloodSearchJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash key, Job onFind, Job onFailed, int timeoutMs, boolean isLease) HandleFloodfillDatabaseLookupMessageJob
(RouterContext ctx, DatabaseLookupMessage receivedMessage, RouterIdentity from, Hash fromHash) HandleFloodfillDatabaseStoreMessageJob
(RouterContext ctx, DatabaseStoreMessage receivedMessage, RouterIdentity from, Hash fromHash, FloodfillNetworkDatabaseFacade facade) IterativeFollowupJob
(RouterContext ctx, Hash key, Hash to, IterativeSearchJob search) IterativeLookupJob
(RouterContext ctx, DatabaseSearchReplyMessage dsrm, IterativeSearchJob search) IterativeLookupSelector
(RouterContext ctx, IterativeSearchJob search) IterativeSearchJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash key, Job onFind, Job onFailed, int timeoutMs, boolean isLease) Lookup using exploratory tunnelsIterativeSearchJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash key, Job onFind, Job onFailed, int timeoutMs, boolean isLease, Hash fromLocalDest) Lookup using the client's tunnels.IterativeTimeoutJob
(RouterContext ctx, Hash peer, IterativeSearchJob job) NegativeLookupCache
(RouterContext context) PersistentDataStore
(RouterContext ctx, String dbDir, KademliaNetworkDatabaseFacade facade) RefreshRoutersJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade) RepublishLeaseSetJob
(RouterContext ctx, KademliaNetworkDatabaseFacade facade, Hash destHash) SearchJob
(RouterContext context, KademliaNetworkDatabaseFacade facade, Hash key, Job onSuccess, Job onFailure, long timeoutMs, boolean keepStats, boolean isLease) Create a new search for the routingKey specifiedSearchMessageSelector
(RouterContext context, RouterInfo peer, long expiration, SearchState state) SearchReplyJob
(RouterContext enclosingContext, SearchJob job, DatabaseSearchReplyMessage message, Hash peer, long duration) SearchState
(RouterContext context, Hash key) SearchUpdateReplyFoundJob
(RouterContext context, RouterInfo peer, SearchState state, KademliaNetworkDatabaseFacade facade, SearchJob job) SearchUpdateReplyFoundJob
(RouterContext context, RouterInfo peer, SearchState state, KademliaNetworkDatabaseFacade facade, SearchJob job, TunnelInfo outTunnel, TunnelInfo replyTunnel) SingleSearchJob
(RouterContext ctx, Hash key, Hash to) StartExplorersJob
(RouterContext context, KademliaNetworkDatabaseFacade facade) StoreJob
(RouterContext context, KademliaNetworkDatabaseFacade facade, Hash key, DatabaseEntry data, Job onSuccess, Job onFailure, long timeoutMs) Send a data structure to the floodfillsStoreJob
(RouterContext context, KademliaNetworkDatabaseFacade facade, Hash key, DatabaseEntry data, Job onSuccess, Job onFailure, long timeoutMs, Set<Hash> toSkip) StoreMessageSelector
(RouterContext ctx, long storeJobId, RouterInfo peer, long waitingForId, long expiration) StoreState
(RouterContext ctx, Hash key, DatabaseEntry data) StoreState
(RouterContext ctx, Hash key, DatabaseEntry data, Set<Hash> toSkip) -
Uses of RouterContext in net.i2p.router.networkdb.reseed
ModifierConstructorDescriptionReseedChecker
(RouterContext context) All reseeding must be done through this instance.(package private)
Reseeder
(RouterContext ctx, ReseedChecker rc) -
Uses of RouterContext in net.i2p.router.peermanager
Modifier and TypeMethodDescription(package private) RouterContext
PeerProfile.getContext()
Helper for calculatorsModifierConstructorDescriptionDBHistory
(RouterContext context, String statGroup) PeerManager
(RouterContext context) Profiles are now loaded in a separate thread, so this should return quickly.PeerProfile
(RouterContext context, Hash peer) Caller should call setLastHeardAbout() and setFirstHeardAbout()PeerTestJob
(RouterContext context) Creates a new instance of PeerTestJobProfileManagerImpl
(RouterContext context) ProfileOrganizer
(RouterContext context) TunnelHistory
(RouterContext context, String statGroup) -
Uses of RouterContext in net.i2p.router.startup
Modifier and TypeFieldDescriptionprotected final RouterContext
LoadClientAppsJob.DelayedRunClient._ctx
Modifier and TypeMethodDescriptionstatic List<ClientAppConfig>
ClientAppConfig.getClientApps
(RouterContext ctx) (package private) static long
CreateRouterInfoJob.getCurrentPublishDate
(RouterContext context) We probably don't want to expose the exact time at which a router published its info.static EncType
CreateRouterInfoJob.getEncTypeConfig
(RouterContext ctx) The configured EncType to expect on read-instatic SigType
CreateRouterInfoJob.getSigTypeConfig
(RouterContext ctx) The configured SigType to expect on read-instatic void
MigrateJetty.migrate
(RouterContext ctx, List<ClientAppConfig> apps) For each entry in apps, if the main class is an old Jetty class, migrate it to the new Jetty class, and update the Jetty config files.static void
LoadClientAppsJob.runClient
(String className, String clientName, String[] args, RouterContext ctx, Log log) Run client in a new thread.static void
LoadClientAppsJob.runClient
(String className, String clientName, String[] args, RouterContext ctx, Log log, ThreadGroup threadGroup, ClassLoader cl) Run client in a new thread.ModifierConstructorDescriptionBootCommSystemJob
(RouterContext context) BuildTrustedLinksJob
(RouterContext context, Job next) (package private)
CreateRouterInfoJob
(RouterContext ctx, Job next) DelayedRunClient
(SimpleTimer2 pool, RouterContext enclosingContext, String className, String clientName, String[] args) caller MUST call schedule()DelayedRunClient
(SimpleTimer2 pool, RouterContext enclosingContext, String className, String clientName, String[] args, ThreadGroup threadGroup, ClassLoader cl) caller MUST call schedule()RebuildRouterInfoJob
(RouterContext context) StartAcceptingClientsJob
(RouterContext context) StartupJob
(RouterContext context) -
Uses of RouterContext in net.i2p.router.sybil
-
Uses of RouterContext in net.i2p.router.tasks
Modifier and TypeMethodDescriptionstatic void
BasePerms.fix
(RouterContext ctx) static String
OOMListener.getWrapperConfigPath
(RouterContext ctx) Best guess of wrapper.config path.static void
CryptoChecker.warnUnavailableCrypto
(RouterContext ctx) ModifierConstructorDescriptionOOMListener
(RouterContext ctx) Republish
(RouterContext ctx) Restarter
(RouterContext ctx) -
Uses of RouterContext in net.i2p.router.transport
Modifier and TypeMethodDescription(package private) static void
GetBidsJob.fail
(RouterContext context, OutNetMessage msg) (package private) static void
GetBidsJob.getBids
(RouterContext context, TransportManager tmgr, OutNetMessage msg) static TransportUtil.IPv6Config
TransportUtil.getIPv6Config
(RouterContext ctx, String transportStyle) static boolean
TransportUtil.isIPv4Firewalled
(RouterContext ctx, String transportStyle) This returns true if the force-firewalled setting is configured, false otherwise.static boolean
TransportUtil.isIPv6Firewalled
(RouterContext ctx, String transportStyle) This returns true if the force-firewalled setting is configured, false otherwise.static boolean
TransportManager.isNTCPEnabled
(RouterContext ctx) static int
TransportUtil.selectRandomPort
(RouterContext ctx, String transportStyle) Pick a random port between the configured boundariesModifierConstructorDescriptionCommSystemFacadeImpl
(RouterContext context) FIFOBandwidthLimiter
(RouterContext context) (package private)
FIFOBandwidthRefiller
(RouterContext context, FIFOBandwidthLimiter limiter) GetBidsJob
(RouterContext ctx, TransportManager tmgr, OutNetMessage msg) Deprecated.unused, see static getBids()OutboundMessageRegistry
(RouterContext context) TransportImpl
(RouterContext context) Initialize the new transportTransportManager
(RouterContext context) UPnPManager
(RouterContext context, TransportManager manager) -
Uses of RouterContext in net.i2p.router.transport.ntcp
Modifier and TypeMethodDescription(package private) static byte[][]
OutboundNTCP2State.generateSipHashKeys
(RouterContext ctx, HandshakeState state) KDF for SipHashModifierConstructorDescriptionprotected
EstablishBase
(RouterContext ctx, NTCPTransport transport, NTCPConnection con) EventPumper
(RouterContext ctx, NTCPTransport transport) InboundEstablishState
(RouterContext ctx, NTCPTransport transport, NTCPConnection con) NTCPConnection
(RouterContext ctx, NTCPTransport transport, SocketChannel chan, SelectionKey key) Create an inbound connected (though not established) NTCP connection.NTCPConnection
(RouterContext ctx, NTCPTransport transport, RouterIdentity remotePeer, RouterAddress remAddr, int version) Create an outbound unconnected NTCP connection.OutboundNTCP2State
(RouterContext ctx, NTCPTransport transport, NTCPConnection con) Reader
(RouterContext ctx) Writer
(RouterContext ctx) -
Uses of RouterContext in net.i2p.router.transport.udp
Modifier and TypeFieldDescriptionprotected final RouterContext
InboundEstablishState._context
protected final RouterContext
OutboundEstablishState._context
protected final RouterContext
PeerState._context
Modifier and TypeMethodDescriptionstatic UDPPacket
UDPPacket.acquire
(RouterContext ctx, boolean inbound) ModifierConstructorDescriptionEstablishmentManager
(RouterContext ctx, UDPTransport transport) InboundEstablishState
(RouterContext ctx, byte[] remoteIP, int remotePort, int localPort, DHSessionKeyBuilder dh, UDPPacketReader.SessionRequestReader req) protected
InboundEstablishState
(RouterContext ctx, InetSocketAddress addr) For SSU2InboundEstablishState2
(RouterContext ctx, UDPTransport transport, UDPPacket packet) Start a new handshake with the given incoming packet, which must be a Session Request or Token Request.InboundMessageFragments
(RouterContext ctx, OutboundMessageFragments outbound, UDPTransport transport) InboundMessageState
(RouterContext ctx, long messageId, Hash from) Only for Poison right now.InboundMessageState
(RouterContext ctx, long messageId, Hash from, byte[] data, int off, int len, int fragmentNum, boolean isLast) Create a new IMS and read in the data from the fragment.InboundMessageState
(RouterContext ctx, long messageId, Hash from, UDPPacketReader.DataReader data, int dataFragment) Create a new IMS and read in the data from the fragment.IntroductionManager
(RouterContext ctx, UDPTransport transport) MessageReceiver
(RouterContext ctx, UDPTransport transport) OutboundEstablishState
(RouterContext ctx, RemoteHostId claimedAddress, RemoteHostId remoteHostId, RouterIdentity remotePeer, boolean allowExtendedOptions, boolean needIntroduction, SessionKey introKey, UDPAddress addr, DHSessionKeyBuilder.Factory dh) protected
OutboundEstablishState
(RouterContext ctx, RemoteHostId claimedAddress, RemoteHostId remoteHostId, RouterIdentity remotePeer, boolean needIntroduction, SessionKey introKey, UDPAddress addr) For SSU2OutboundEstablishState2
(RouterContext ctx, UDPTransport transport, RemoteHostId claimedAddress, RemoteHostId remoteHostId, RouterIdentity remotePeer, boolean needIntroduction, SessionKey introKey, RouterAddress ra, UDPAddress addr) Prepare to start a new handshake with the given peer.OutboundMessageFragments
(RouterContext ctx, UDPTransport transport, OutboundMessageFragments.ActiveThrottle throttle) OutboundRefiller
(RouterContext ctx, OutboundMessageFragments fragments, MessageQueue messages) PacketBuilder
(RouterContext ctx, UDPTransport transport) No state, all methods are thread-safe.PacketBuilder2
(RouterContext ctx, UDPTransport transport) No state, all methods are thread-safe.(package private)
PacketHandler
(RouterContext ctx, UDPTransport transport, boolean enableSSU2, EstablishmentManager establisher, InboundMessageFragments inbound, PeerTestManager testManager, IntroductionManager introManager) PacketPusher
(RouterContext ctx, OutboundMessageFragments fragments, List<UDPEndpoint> endpoints) PeerState
(RouterContext ctx, UDPTransport transport, byte[] remoteIP, int remotePort, Hash remotePeer, boolean isInbound, int rtt, SessionKey cipherKey, SessionKey macKey) SSU 1 only.protected
PeerState
(RouterContext ctx, UDPTransport transport, InetSocketAddress addr, Hash remotePeer, boolean isInbound, int rtt) For SSU2PeerState2
(RouterContext ctx, UDPTransport transport, InetSocketAddress remoteAddress, Hash remotePeer, boolean isInbound, int rtt, CipherState sendCha, CipherState rcvCha, long sendID, long rcvID, byte[] sendHdrKey1, byte[] sendHdrKey2, byte[] rcvHdrKey2) (package private)
PeerTestEvent
(RouterContext ctx, UDPTransport udp, PeerTestManager ptmgr) PeerTestManager
(RouterContext context, UDPTransport transport) Have seen peer tests (as Alice) get stuck (_currentTest != null) so I've thrown some synchronizization on the methods; don't know the root cause or whether this fixes itTimedWeightedPriorityMessageQueue
(RouterContext ctx, int[] priorityLimits, int[] weighting, TimedWeightedPriorityMessageQueue.FailedListener lsnr) Build up a new queueUDPEndpoint
(RouterContext ctx, UDPTransport transport, int listenPort, InetAddress bindAddress) UDPReceiver
(RouterContext ctx, UDPTransport transport, DatagramSocket socket, String name, SocketListener lsnr) UDPSender
(RouterContext ctx, DatagramSocket socket, String name, SocketListener lsnr) UDPTransport
(RouterContext ctx, DHSessionKeyBuilder.Factory dh, X25519KeyFactory xdh) -
Uses of RouterContext in net.i2p.router.tunnel
Modifier and TypeFieldDescriptionprotected final RouterContext
FragmentHandler._context
protected final RouterContext
TrivialPreprocessor._context
protected final RouterContext
TunnelCreatorConfig._context
protected final RouterContext
TunnelGateway._context
Modifier and TypeMethodDescriptionstatic int
TunnelDispatcher.getShareBandwidth
(RouterContext ctx) ModifierConstructorDescriptionBatchedPreprocessor
(RouterContext ctx, String name) BatchedRouterPreprocessor
(RouterContext ctx, HopConfig cfg) for IBGWsfor OBGWsBloomFilterIVValidator
(RouterContext ctx, int KBps) FragmentHandler
(RouterContext context, FragmentHandler.DefragmentedReceiver receiver) (package private)
Deprecated.used only by unit testsInboundEndpointProcessor
(RouterContext ctx, TunnelCreatorConfig cfg, IVValidator validator) InboundGatewayReceiver
(RouterContext ctx, HopConfig cfg) InboundMessageDistributor
(RouterContext ctx, Hash client) OutboundMessageDistributor
(RouterContext ctx, int priority) OutboundTunnelEndpoint
(RouterContext ctx, HopConfig config, HopProcessor processor) PumpedTunnelGateway
(RouterContext context, TunnelGateway.QueuePreprocessor preprocessor, TunnelGateway.Sender sender, TunnelGateway.Receiver receiver, TunnelGatewayPumper pumper) RouterFragmentHandler
(RouterContext context, FragmentHandler.DefragmentedReceiver receiver) ThrottledPumpedTunnelGateway
(RouterContext context, TunnelGateway.QueuePreprocessor preprocessor, TunnelGateway.Sender sender, TunnelGateway.Receiver receiver, TunnelGatewayPumper pumper, HopConfig config) Deprecated.TunnelCreatorConfig
(RouterContext ctx, int length, boolean isInbound) For exploratory only (null destination)TunnelCreatorConfig
(RouterContext ctx, int length, boolean isInbound, Hash destination) Creates a new instance of TunnelDispatcherprotected
TunnelGateway
(RouterContext context, TunnelGateway.QueuePreprocessor preprocessor, TunnelGateway.Sender sender, TunnelGateway.Receiver receiver) Creates a new instance of TunnelGatewayPumperTunnelGatewayZeroHop
(RouterContext context, TunnelCreatorConfig config) TunnelParticipant
(RouterContext ctx, HopConfig config, HopProcessor processor) not an inbound endpointTunnelParticipant
(RouterContext ctx, InboundEndpointProcessor inEndProc) inbound endpoint -
Uses of RouterContext in net.i2p.router.tunnel.pool
Modifier and TypeFieldDescriptionprotected final RouterContext
TunnelPool._context
protected final RouterContext
ConnectChecker.ctx
Modifier and TypeMethodDescriptionstatic void
BuildMessageGenerator.createRecord
(int recordNum, int hop, TunnelBuildMessage msg, TunnelCreatorConfig cfg, Hash replyRouter, long replyTunnel, RouterContext 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)static boolean
BuildRequestor.request
(RouterContext ctx, PooledTunnelCreatorConfig cfg, BuildExecutor exec) Send out a build request message.static boolean
TunnelPeerSelector.shouldExclude
(RouterContext ctx, RouterInfo peer) warning, this is also called by ProfileOrganizer.isSelectable()ModifierConstructorDescription(package private)
AliasedTunnelPool
(RouterContext ctx, TunnelPoolManager mgr, TunnelPoolSettings settings, TunnelPool aliasOf) BuildExecutor
(RouterContext ctx, TunnelPoolManager mgr) BuildHandler
(RouterContext ctx, TunnelPoolManager manager, BuildExecutor exec) ClientPeerSelector
(RouterContext context) ConnectChecker
(RouterContext context) ExpireJob
(RouterContext ctx, PooledTunnelCreatorConfig cfg) ExploratoryPeerSelector
(RouterContext context) (package private)
PooledTunnelCreatorConfig
(RouterContext ctx, int length, boolean isInbound, Hash destination, TunnelPool pool) Creates a new instance of PooledTunnelCreatorConfig(package private)
TestJob
(RouterContext ctx, PooledTunnelCreatorConfig cfg, TunnelPool pool) protected
TunnelPeerSelector
(RouterContext context) (package private)
TunnelPool
(RouterContext ctx, TunnelPoolManager mgr, TunnelPoolSettings settings, TunnelPeerSelector sel) -
Uses of RouterContext in net.i2p.router.update
Modifier and TypeFieldDescriptionprotected final RouterContext
UpdateHandler._context
protected final RouterContext
UpdateRunner._context
ModifierConstructorDescriptionConsoleUpdateManager
(RouterContext ctx, ClientAppManager listener, String[] args) DevSU3UpdateChecker
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris) DevSU3UpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris) DummyHandler
(RouterContext ctx, ConsoleUpdateManager mgr) NewsFetcher
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris) NewsHandler
(RouterContext ctx, ConsoleUpdateManager mgr) NewsTimerTask
(RouterContext ctx, ConsoleUpdateManager mgr) PluginUpdateChecker
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris, String appName, String oldVersion) PluginUpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris, String appName, String oldVersion) UnsignedUpdateChecker
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris, long lastUpdateTime) UnsignedUpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, List<URI> uris) UpdateHandler
(RouterContext ctx, ConsoleUpdateManager mgr) UpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, UpdateType type, List<URI> uris) Uses router version for partial checksUpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, UpdateType type, List<URI> uris, String currentVersion) UpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, UpdateType type, UpdateMethod method, List<URI> uris) Uses router version for partial checksUpdateRunner
(RouterContext ctx, ConsoleUpdateManager mgr, UpdateType type, UpdateMethod method, List<URI> uris, String currentVersion) -
Uses of RouterContext in net.i2p.router.util
ModifierConstructorDescriptionMaskedIPSet
(RouterContext ctx, Hash peer, int mask) The Set of IPs for this peer, with a given mask.MaskedIPSet
(RouterContext ctx, Hash peer, RouterInfo pinfo, int mask) The Set of IPs for this peer, with a given mask.MaskedIPSet
(RouterContext ctx, RouterInfo pinfo, int mask) The Set of IPs for this peer, with a given mask.// migrate these to b64 private static final String[] MIGRATE_FROM = { // This has a separate router.reseedProxy.username prop, // so let's not mess with it "router.reseedProxy.password", // Don't migrate these until we have a console form for them, // which we aren't likely to ever bother with "routerconsole.keyPassword", "routerconsole.keystorePassword", "i2cp.keyPassword", "i2cp.keystorePassword" }; private static final String[] MIGRATE_TO = { "router.reseedProxy.auth", "routerconsole.ssl.key.auth", "routerconsole.ssl.keystore.auth", "i2cp.ssl.key.auth", "i2cp.ssl.keystore.auth" }; -
Uses of RouterContext in net.i2p.router.web
Modifier and TypeFieldDescriptionprotected RouterContext
FormHandler._context
protected RouterContext
HelperBase._context
protected RouterContext
PluginStarter._context
protected RouterContext
UpdateHandler._context
Modifier and TypeMethodDescriptionstatic RouterContext
ContextHelper.getContext
(String contextId) Modifier and TypeMethodDescription(package private) static WebAppContext
WebAppStarter.addWebApp
(RouterContext ctx, ContextHandlerCollection server, String appName, String warPath, File tmpdir) add but don't start This is used only by RouterConsoleRunner, which adds all the webapps first and then starts all at once.static boolean
PluginStarter.deletePlugin
(RouterContext ctx, String appName) static boolean
DeadlockDetector.detect
(RouterContext ctx) static boolean
NewsHelper.dontInstall
(RouterContext ctx) (package private) static void
RouterConsoleRunner.initialize
(RouterContext ctx, WebAppContext context) Set up basic security constraints for the webapp.static boolean
NewsHelper.isBaseReadonly
(RouterContext ctx) static boolean
NewsHelper.isDevSU3UpdateAvailable
(RouterContext ctx) Will be false if already downloaded or if dev update disabled.static boolean
PluginStarter.isPluginRunning
(String pluginName, RouterContext ctx) protected static boolean
PluginStarter.isPluginRunning
(String pluginName, RouterContext ctx, Server s) static boolean
NewsHelper.isUnsignedUpdateAvailable
(RouterContext ctx) Will be false if already downloaded or if dev update disabled.static boolean
NewsHelper.isUpdateDisabled
(RouterContext ctx) static long
NewsHelper.lastChecked
(RouterContext ctx) static long
NewsHelper.lastUpdated
(RouterContext ctx) When the news was last downloaded(package private) static void
ConfigServiceHandler.registerSignalHandler
(RouterContext ctx) Register a handler for signals, so we can handle HUP from the wrapper (wrapper 3.2.0 or higher)static void
ConfigServiceHandler.registerWrapperNotifier
(RouterContext ctx, int code, boolean rekey) Register two shutdown hooks, one to rekey and/or tell the wrapper we are stopping, and a final one to tell the wrapper we are stopped.static boolean
NewsHelper.shouldShowNews
(RouterContext ctx) static void
NewsHelper.showNews
(RouterContext ctx, boolean yes) Save config with the timestamp of the current news to hide, or 0 to showstatic boolean
PluginStarter.startPlugin
(RouterContext ctx, String appName) (package private) static void
PluginStarter.startPlugins
(RouterContext ctx) this shouldn't throw anythingstatic void
WebAppStarter.startWebApp
(RouterContext ctx, ContextHandlerCollection server, String appName, String warPath) Adds and starts.static void
WebAppStarter.startWebApp
(RouterContext ctx, ContextHandlerCollection server, String appName, String warPath, String pluginName) Adds and starts.static String
NewsHelper.status
(RouterContext ctx) static boolean
PluginStarter.stopPlugin
(RouterContext ctx, String appName) protected static boolean
PluginStarter.stopPlugin
(RouterContext ctx, Server s, String appName) static void
WebAppStarter.stopWebApp
(RouterContext ctx, String appName) Stop it and remove the context.(package private) static void
WebAppStarter.stopWebApp
(RouterContext ctx, Server s, String appName) Stop it and remove the context.static void
RouterConsoleRunner.storeWebAppProperties
(RouterContext ctx, Properties props) static void
PluginStarter.updateAll
(RouterContext ctx) threadedstatic ConsoleUpdateManager
UpdateHandler.updateManager
(RouterContext ctx) ModifierConstructorDescriptionPluginStopper
(RouterContext ctx, Server server) RouterConsoleRunner
(RouterContext ctx, ClientAppManager mgr, String[] args) non-SSL: RouterConsoleRunner RouterConsoleRunner 7657 RouterConsoleRunner 7657 127.0.0.1 RouterConsoleRunner 7657 127.0.0.1,::1 RouterConsoleRunner 7657 127.0.0.1,::1 ./webapps/ SSL: RouterConsoleRunner -s 7657 RouterConsoleRunner -s 7657 127.0.0.1 RouterConsoleRunner -s 7657 127.0.0.1,::1 RouterConsoleRunner -s 7657 127.0.0.1,::1 ./webapps/ If using both, non-SSL must be first: RouterConsoleRunner 7657 127.0.0.1 -s 7667 RouterConsoleRunner 7657 127.0.0.1 -s 7667 127.0.0.1 RouterConsoleRunner 7657 127.0.0.1,::1 -s 7667 127.0.0.1,::1 RouterConsoleRunner 7657 127.0.0.1,::1 -s 7667 127.0.0.1,::1 ./webapps/Wrapper must be 3.2.0 or higher, or will throw class not found error. -
Uses of RouterContext in net.i2p.router.web.helpers
Modifier and TypeMethodDescription(package private) static Collection<App>
HomeHelper.buildApps
(RouterContext ctx, String config) static void
SybilRenderer.renderSybilHTML
(Writer out, RouterContext ctx, List<Hash> sybils, String victim) Called from NetDbRenderer(package private) static void
HomeHelper.saveApps
(RouterContext ctx, String prop, Collection<App> apps, boolean full) (package private) static void
SummaryHelper.saveSummaryBarSections
(RouterContext ctx, String page, Map<Integer, String> sections) ModifierConstructorDescriptionBanlistRenderer
(RouterContext context) ProfileOrganizerRenderer
(ProfileOrganizer organizer, RouterContext context) StatsGenerator
(RouterContext context) SummaryBarRenderer
(RouterContext context, SummaryHelper helper)