Uses of Class
net.i2p.data.router.RouterInfo
Package
Description
This package defines the low-level messages sent between routers,
called the Invisible Internet Network Protocol (I2NP).
Classes formerly in net.i2p.data but moved here as they are only used by the router.
The I2P router application handles the I2P network communication.
Classes formerly in net.i2p.crypto but moved here as they are only used by the router.
Dummy versions of things for testing.
Creates and parses garlic messages.
The network database, including implementation of floodfills.
The I2P startup package loads the configuration when I2P is started.
Classes to run offline Sybil analysis, and to
store and load the results.
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.
Tunnel creation, tunnel build message handling.
These classes define the several useful utilities used
throughout the router.
-
Uses of RouterInfo in net.i2p.data.i2np
Modifier and TypeMethodDescriptionstatic boolean
DatabaseLookupMessage.supportsEncryptedReplies
(RouterInfo to) Does this router support encrypted replies?static boolean
DatabaseLookupMessage.supportsRatchetReplies
(RouterInfo to) Does this router support ratchet replies? -
Uses of RouterInfo in net.i2p.data.router
ModifierConstructorDescriptionRouterInfo
(RouterInfo old) Used only by Router and PublishLocalRouterInfoJob. -
Uses of RouterInfo in net.i2p.router
Modifier and TypeMethodDescriptionRouter.getRouterInfo()
Our current router info.OutNetMessage.getTarget()
Specifies the router to which the message should be delivered.abstract RouterInfo
NetworkDatabaseFacade.lookupRouterInfoLocally
(Hash key) abstract RouterInfo
NetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo) Modifier and TypeMethodDescriptionNetworkDatabaseFacade.getRouters()
public for NetDbRenderer in routerconsoleModifier and TypeMethodDescriptionboolean
Blocklist.isBlocklisted
(RouterInfo pinfo) Does the peer's IP address appear in the blocklist? If so, and it isn't banlisted, banlist it forever...boolean
CommSystemFacade.isInStrictCountry
(RouterInfo ri) abstract void
NetworkDatabaseFacade.publish
(RouterInfo localRouterInfo) void
Router.setRouterInfo
(RouterInfo info) Caller must ensure info is valid - no validation done here.abstract RouterInfo
NetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo) ModifierConstructorDescriptionOutNetMessage
(RouterContext context, I2NPMessage msg, long expiration, int priority, RouterInfo target) Standard constructor -
Uses of RouterInfo in net.i2p.router.crypto
Modifier and TypeMethodDescriptionFamilyKeyCrypto.verify
(RouterInfo ri) Verify the family signature in a RouterInfo.boolean
FamilyKeyCrypto.verifyOurFamily
(RouterInfo ri) Verify the family in a RouterInfo matches ours and the signature is good. -
Uses of RouterInfo in net.i2p.router.dummy
Modifier and TypeMethodDescriptionDummyNetworkDatabaseFacade.lookupRouterInfoLocally
(Hash key) DummyNetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo) Modifier and TypeMethodDescriptionvoid
DummyNetworkDatabaseFacade.publish
(RouterInfo localRouterInfo) DummyNetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo) -
Uses of RouterInfo in net.i2p.router.message
Modifier and TypeMethodDescriptionvoid
GarlicConfig.setRecipient
(RouterInfo info) Router to receive and process this clove - the router that will open the delivery instructions and decide what to do process it locally as an I2NPMessage, forward it as an I2NPMessage to a router, forward it as an I2NPMessage to a Destination, or forward it as an I2NPMessage to a tunnel. -
Uses of RouterInfo in net.i2p.router.networkdb.kademlia
Modifier and TypeMethodDescriptionKademliaNetworkDatabaseFacade.lookupRouterInfoLocally
(Hash key) This will return immediately with the result or null.KademliaNetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo) Store the routerInfo.(package private) RouterInfo
KademliaNetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo, boolean persist) Store the routerInfo.Modifier and TypeMethodDescriptionFloodfillNetworkDatabaseFacade.getKnownRouterData()
KademliaNetworkDatabaseFacade.getRouters()
public for NetDbRenderer in routerconsoleModifier and TypeMethodDescriptionprotected I2NPMessage
ExploreJob.buildMessage
(TunnelId replyTunnelId, Hash replyGateway, long expiration, RouterInfo peer) Build the database search message, but unlike the normal searches, we're more explicit in what we /dont/ want.protected I2NPMessage
SearchJob.buildMessage
(TunnelId replyTunnelId, Hash replyGateway, long expiration, RouterInfo peer) Build the database search messagestatic boolean
FloodfillNetworkDatabaseFacade.isFloodfill
(RouterInfo peer) protected void
FloodfillNetworkDatabaseFacade.lookupBeforeDropping
(Hash peer, RouterInfo info) Search for a newer router info, drop it from the db if the search fails, unless just started up or have bigger problems.protected void
KademliaNetworkDatabaseFacade.lookupBeforeDropping
(Hash peer, RouterInfo info) don't use directly - see F.N.D.F.void
FloodfillNetworkDatabaseFacade.publish
(RouterInfo localRouterInfo) Send our RI to the closest floodfill.void
KademliaNetworkDatabaseFacade.publish
(RouterInfo localRouterInfo) Stores to local db only.protected void
SearchJob.sendLeaseSearch
(RouterInfo router) we're (probably) searching for a LeaseSet, so to be (overly) cautious, we're sending the request out through a tunnel w/ reply back through another tunnel.protected void
SearchJob.sendRouterSearch
(RouterInfo router) we're searching for a router, so we can just send directprotected void
SearchJob.sendSearch
(RouterInfo router) Send a search to the given peer(package private) static boolean
StoreJob.shouldStoreEncLS2To
(RouterInfo ri) Is it new enough?(package private) static boolean
StoreJob.shouldStoreLS2To
(RouterInfo ri) Is it new enough?(package private) static boolean
StoreJob.shouldStoreTo
(RouterInfo ri) Is it new enough?KademliaNetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo) Store the routerInfo.(package private) RouterInfo
KademliaNetworkDatabaseFacade.store
(Hash key, RouterInfo routerInfo, boolean persist) Store the routerInfo.(package private) String
KademliaNetworkDatabaseFacade.validate
(RouterInfo routerInfo) Determine whether this routerInfo will be accepted as valid and current given what we know now.(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.ModifierConstructorDescriptionDirectLookupJob
(RouterContext ctx, FloodfillNetworkDatabaseFacade facade, Hash peer, RouterInfo oldRI, Job onFind, Job onFail) 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)SearchMessageSelector
(RouterContext context, RouterInfo peer, long expiration, SearchState state) 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) StoreMessageSelector
(RouterContext ctx, long storeJobId, RouterInfo peer, long waitingForId, long expiration) -
Uses of RouterInfo in net.i2p.router.startup
Modifier and TypeMethodDescription(package private) RouterInfo
CreateRouterInfoJob.createRouterInfo()
Writes 6 files: router.info (standard RI format), router.keys.dat, and 4 individual key files under keyBackup/ router.keys.dat file format: This is the same "eepPriv.dat" format used by the client code, as documented in PrivateKeyFile. -
Uses of RouterInfo in net.i2p.router.sybil
Modifier and TypeMethodDescriptionAnalysis.calculateIPGroups16
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroups24
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroups32
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroupsFamily
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.getAllRouters
(Hash us) All the routers, not including usAnalysis.getFloodfills
(Hash us) All the floodfills, not including usModifier and TypeMethodDescriptionvoid
Analysis.addProfilePoints
(List<RouterInfo> ris, Map<Hash, Points> points) void
Analysis.addVersionPoints
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroups16
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroups24
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroups32
(List<RouterInfo> ris, Map<Hash, Points> points) Analysis.calculateIPGroupsFamily
(List<RouterInfo> ris, Map<Hash, Points> points) void
Analysis.calculateIPGroupsUs
(List<RouterInfo> ris, Map<Hash, Points> points, List<RouterInfo> ri32, List<RouterInfo> ri24, List<RouterInfo> ri16) double
Analysis.calculatePairDistance
(List<RouterInfo> ris, Map<Hash, Points> points, List<Pair> pairs) void
Analysis.calculateRouterInfo
(Hash us, String usName, List<RouterInfo> ris, Map<Hash, Points> points) double
Analysis.getAvgMinDist
(List<RouterInfo> ris) -
Uses of RouterInfo in net.i2p.router.transport
Modifier and TypeMethodDescriptionTransport.bid
(RouterInfo toAddress, int dataSize) TransportImpl.getTargetAddresses
(RouterInfo target) Get all available address we can use, shuffled and then sorted by cost/preference.boolean
CommSystemFacadeImpl.isInStrictCountry
(RouterInfo ri) Are they in a strict country -
Uses of RouterInfo in net.i2p.router.transport.ntcp
Modifier and TypeMethodDescriptionNTCPTransport.bid
(RouterInfo toAddress, int dataSize) void
InboundEstablishState.gotRI
(RouterInfo ri, boolean isHandshake, boolean flood) Get "s" static key out of RI, compare to what we got in the handshake.void
NTCP2Payload.PayloadCallback.gotRI
(RouterInfo ri, boolean isHandshake, boolean flood) -
Uses of RouterInfo in net.i2p.router.transport.udp
Modifier and TypeMethodDescriptionUDPTransport.bid
(RouterInfo toAddress, int dataSize) PacketBuilder2.buildSessionConfirmedPackets
(OutboundEstablishState2 state, RouterInfo ourInfo) Build a new series of SessionConfirmed packets for the given peer, encrypting it as necessary.(package private) RouterAddress
UDPTransport.getTargetAddress
(RouterInfo target) Get first available address we can use.void
InboundEstablishState2.gotRI
(RouterInfo ri, boolean isHandshake, boolean flood) void
OutboundEstablishState2.gotRI
(RouterInfo ri, boolean isHandshake, boolean flood) void
PeerState2.gotRI
(RouterInfo ri, boolean isHandshake, boolean flood) void
SSU2Payload.PayloadCallback.gotRI
(RouterInfo ri, boolean isHandshake, boolean flood) -
Uses of RouterInfo in net.i2p.router.tunnel.pool
Modifier and TypeMethodDescriptionboolean
ConnectChecker.canConnect
(int ourMask, RouterInfo to) Can we connect to "to" based on published addresses? This is intended for tunnel candidates, where we already have the RI.boolean
ConnectChecker.canConnect
(RouterInfo from, int ourMask) Can "from" connect to us based on published addresses? This is intended for tunnel candidates, where we already have the RI.int
ConnectChecker.getInboundMask
(RouterInfo us) Our inbound mask.int
ConnectChecker.getOutboundMask
(RouterInfo us) Our outbound mask.static boolean
TunnelPeerSelector.shouldExclude
(RouterContext ctx, RouterInfo peer) warning, this is also called by ProfileOrganizer.isSelectable() -
Uses of RouterInfo in net.i2p.router.util
ModifierConstructorDescriptionMaskedIPSet
(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.