Uses of Class
net.i2p.data.router.RouterInfo
Packages that use 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
Methods in net.i2p.data.i2np with parameters of type RouterInfoModifier and TypeMethodDescriptionstatic booleanDatabaseLookupMessage.supportsEncryptedReplies(RouterInfo to) Does this router support encrypted replies?static booleanDatabaseLookupMessage.supportsRatchetReplies(RouterInfo to) Does this router support ratchet replies? -
Uses of RouterInfo in net.i2p.data.router
Constructors in net.i2p.data.router with parameters of type RouterInfoModifierConstructorDescriptionRouterInfo(RouterInfo old) Used only by Router and PublishLocalRouterInfoJob. -
Uses of RouterInfo in net.i2p.router
Methods in net.i2p.router that return RouterInfoModifier and TypeMethodDescriptionRouter.getRouterInfo()Our current router info.OutNetMessage.getTarget()Specifies the router to which the message should be delivered.abstract RouterInfoNetworkDatabaseFacade.lookupRouterInfoLocally(Hash key) abstract RouterInfoNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo) Methods in net.i2p.router that return types with arguments of type RouterInfoModifier and TypeMethodDescriptionNetworkDatabaseFacade.getRouters()public for NetDbRenderer in routerconsoleMethods in net.i2p.router with parameters of type RouterInfoModifier and TypeMethodDescriptionbooleanBlocklist.isBlocklisted(RouterInfo pinfo) Does the peer's IP address appear in the blocklist? If so, and it isn't banlisted, banlist it forever...booleanCommSystemFacade.isInStrictCountry(RouterInfo ri) abstract voidNetworkDatabaseFacade.publish(RouterInfo localRouterInfo) voidRouter.setRouterInfo(RouterInfo info) Caller must ensure info is valid - no validation done here.abstract RouterInfoNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo) Constructors in net.i2p.router with parameters of type RouterInfoModifierConstructorDescriptionOutNetMessage(RouterContext context, I2NPMessage msg, long expiration, int priority, RouterInfo target) Standard constructor -
Uses of RouterInfo in net.i2p.router.crypto
Methods in net.i2p.router.crypto with parameters of type RouterInfoModifier and TypeMethodDescriptionFamilyKeyCrypto.verify(RouterInfo ri) Verify the family signature in a RouterInfo.booleanFamilyKeyCrypto.verifyOurFamily(RouterInfo ri) Verify the family in a RouterInfo matches ours and the signature is good. -
Uses of RouterInfo in net.i2p.router.dummy
Methods in net.i2p.router.dummy that return RouterInfoModifier and TypeMethodDescriptionDummyNetworkDatabaseFacade.lookupRouterInfoLocally(Hash key) DummyNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo) Methods in net.i2p.router.dummy with parameters of type RouterInfoModifier and TypeMethodDescriptionvoidDummyNetworkDatabaseFacade.publish(RouterInfo localRouterInfo) DummyNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo) -
Uses of RouterInfo in net.i2p.router.message
Methods in net.i2p.router.message that return RouterInfoMethods in net.i2p.router.message with parameters of type RouterInfoModifier and TypeMethodDescriptionvoidGarlicConfig.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
Methods in net.i2p.router.networkdb.kademlia that return RouterInfoModifier 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) RouterInfoKademliaNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo, boolean persist) Store the routerInfo.Methods in net.i2p.router.networkdb.kademlia that return types with arguments of type RouterInfoModifier and TypeMethodDescriptionFloodfillNetworkDatabaseFacade.getKnownRouterData()KademliaNetworkDatabaseFacade.getRouters()public for NetDbRenderer in routerconsoleMethods in net.i2p.router.networkdb.kademlia with parameters of type RouterInfoModifier and TypeMethodDescriptionprotected I2NPMessageExploreJob.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 I2NPMessageSearchJob.buildMessage(TunnelId replyTunnelId, Hash replyGateway, long expiration, RouterInfo peer) Build the database search messagestatic booleanFloodfillNetworkDatabaseFacade.isFloodfill(RouterInfo peer) protected voidFloodfillNetworkDatabaseFacade.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 voidKademliaNetworkDatabaseFacade.lookupBeforeDropping(Hash peer, RouterInfo info) don't use directly - see F.N.D.F.voidFloodfillNetworkDatabaseFacade.publish(RouterInfo localRouterInfo) Send our RI to the closest floodfill.voidKademliaNetworkDatabaseFacade.publish(RouterInfo localRouterInfo) Stores to local db only.protected voidSearchJob.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 voidSearchJob.sendRouterSearch(RouterInfo router) we're searching for a router, so we can just send directprotected voidSearchJob.sendSearch(RouterInfo router) Send a search to the given peer(package private) static booleanStoreJob.shouldStoreEncLS2To(RouterInfo ri) Is it new enough?(package private) static booleanStoreJob.shouldStoreLS2To(RouterInfo ri) Is it new enough?(package private) static booleanStoreJob.shouldStoreTo(RouterInfo ri) Is it new enough?KademliaNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo) Store the routerInfo.(package private) RouterInfoKademliaNetworkDatabaseFacade.store(Hash key, RouterInfo routerInfo, boolean persist) Store the routerInfo.(package private) StringKademliaNetworkDatabaseFacade.validate(RouterInfo routerInfo) Determine whether this routerInfo will be accepted as valid and current given what we know now.(package private) static MessageWrapper.WrappedMessageMessageWrapper.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 GarlicMessageMessageWrapper.wrap(RouterContext ctx, I2NPMessage m, RouterInfo to) Garlic wrap a message from nobody, destined for a router, to hide the contents from the OBEP.Constructors in net.i2p.router.networkdb.kademlia with parameters of type RouterInfoModifierConstructorDescriptionDirectLookupJob(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
Methods in net.i2p.router.startup that return RouterInfoModifier and TypeMethodDescription(package private) RouterInfoCreateRouterInfoJob.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
Fields in net.i2p.router.sybil declared as RouterInfoMethods in net.i2p.router.sybil that return types with arguments of type RouterInfoModifier 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 usMethod parameters in net.i2p.router.sybil with type arguments of type RouterInfoModifier and TypeMethodDescriptionvoidAnalysis.addProfilePoints(List<RouterInfo> ris, Map<Hash, Points> points) voidAnalysis.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) voidAnalysis.calculateIPGroupsUs(List<RouterInfo> ris, Map<Hash, Points> points, List<RouterInfo> ri32, List<RouterInfo> ri24, List<RouterInfo> ri16) doubleAnalysis.calculatePairDistance(List<RouterInfo> ris, Map<Hash, Points> points, List<Pair> pairs) voidAnalysis.calculateRouterInfo(Hash us, String usName, List<RouterInfo> ris, Map<Hash, Points> points) doubleAnalysis.getAvgMinDist(List<RouterInfo> ris) Constructors in net.i2p.router.sybil with parameters of type RouterInfo -
Uses of RouterInfo in net.i2p.router.transport
Methods in net.i2p.router.transport with parameters of type RouterInfoModifier 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.booleanCommSystemFacadeImpl.isInStrictCountry(RouterInfo ri) Are they in a strict country -
Uses of RouterInfo in net.i2p.router.transport.ntcp
Methods in net.i2p.router.transport.ntcp with parameters of type RouterInfoModifier and TypeMethodDescriptionNTCPTransport.bid(RouterInfo toAddress, int dataSize) voidInboundEstablishState.gotRI(RouterInfo ri, boolean isHandshake, boolean flood) Get "s" static key out of RI, compare to what we got in the handshake.voidNTCP2Payload.PayloadCallback.gotRI(RouterInfo ri, boolean isHandshake, boolean flood) Constructors in net.i2p.router.transport.ntcp with parameters of type RouterInfo -
Uses of RouterInfo in net.i2p.router.transport.udp
Methods in net.i2p.router.transport.udp with parameters of type RouterInfoModifier 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) RouterAddressUDPTransport.getTargetAddress(RouterInfo target) Get first available address we can use.voidInboundEstablishState2.gotRI(RouterInfo ri, boolean isHandshake, boolean flood) voidOutboundEstablishState2.gotRI(RouterInfo ri, boolean isHandshake, boolean flood) voidPeerState2.gotRI(RouterInfo ri, boolean isHandshake, boolean flood) voidSSU2Payload.PayloadCallback.gotRI(RouterInfo ri, boolean isHandshake, boolean flood) -
Uses of RouterInfo in net.i2p.router.tunnel.pool
Methods in net.i2p.router.tunnel.pool with parameters of type RouterInfoModifier and TypeMethodDescriptionbooleanConnectChecker.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.booleanConnectChecker.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.intConnectChecker.getInboundMask(RouterInfo us) Our inbound mask.intConnectChecker.getOutboundMask(RouterInfo us) Our outbound mask.static booleanTunnelPeerSelector.shouldExclude(RouterContext ctx, RouterInfo peer) warning, this is also called by ProfileOrganizer.isSelectable() -
Uses of RouterInfo in net.i2p.router.util
Constructors in net.i2p.router.util with parameters of type RouterInfoModifierConstructorDescriptionMaskedIPSet(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.