---
title: Classes

---

# Classes




* **struct [ManagedBuffer](Classes/structManagedBuffer.md)** <br>Provide a copyable/moveable wrapper around `[llarp_buffer_t]()`. 
* **namespace [fmt](Namespaces/namespacefmt.md)** 
    * **struct [formatter< T, char, std::enable_if_t< llarp::IsToStringFormattable< T > > >](Classes/structfmt_1_1formatter_3_01T_00_01char_00_01std_1_1enable__if__t_3_01llarp_1_1IsToStringFormattable_3_01T_01_4_01_4_01_4.md)** 
    * **struct [formatter< T, char, std::enable_if_t< llarp::is_aligned_buffer< T > &&!llarp::IsToStringFormattable< T > > >](Classes/structfmt_1_1formatter_3_01T_00_01char_00_01std_1_1enable__if__t_3_01llarp_1_1is__aligned_.md)** 
    * **struct [formatter< fs::path >](Classes/structfmt_1_1formatter_3_01fs_1_1path_01_4.md)** 
* **namespace [fs](Namespaces/namespacefs.md)** 
* **namespace [llarp](Namespaces/namespacellarp.md)** <br>[crypto.hpp]
    * **struct [AbstractRouter](Classes/structllarp_1_1AbstractRouter.md)** 
    * **struct [AddressInfo](Classes/structllarp_1_1AddressInfo.md)** 
    * **struct [AlignedBuffer](Classes/structllarp_1_1AlignedBuffer.md)** <br>aligned buffer that is sz bytes long and aligns to the nearest Alignment 
    * **struct [ApiConfig](Classes/structllarp_1_1ApiConfig.md)** 
    * **struct [AsyncFrameDecrypter](Classes/structllarp_1_1AsyncFrameDecrypter.md)** 
    * **struct [BootstrapConfig](Classes/structllarp_1_1BootstrapConfig.md)** 
    * **struct [BootstrapList](Classes/structllarp_1_1BootstrapList.md)** 
    * **struct [CSRNG](Classes/structllarp_1_1CSRNG.md)** <br>rng type that uses [llarp::randint()](Namespaces/namespacellarp.md#function-randint), which is cryptographically secure 
    * **struct [CaselessLessThan](Classes/structllarp_1_1CaselessLessThan.md)** 
    * **struct [ComparePtr](Classes/structllarp_1_1ComparePtr.md)** <br>type for comparing smart pointer's managed values 
    * **struct [CompareWeakPtr](Classes/structllarp_1_1CompareWeakPtr.md)** <br>type for comparing weak_ptr by value 
    * **struct [Config](Classes/structllarp_1_1Config.md)** 
    * **struct [ConfigDefinition](Classes/structllarp_1_1ConfigDefinition.md)** <br>A [ConfigDefinition]() holds an ordered set of OptionDefinitions defining the allowable values and their constraints (specified through calls to [defineOption()]()). 
    * **struct [ConfigGenParameters](Classes/structllarp_1_1ConfigGenParameters.md)** <br>Small struct to gather all parameters needed for config generation to reduce the number of parameters that need to be passed around. 
    * **struct [ConfigParser](Classes/structllarp_1_1ConfigParser.md)** 
    * **struct [ConnectConfig](Classes/structllarp_1_1ConnectConfig.md)** 
    * **struct [Crypto](Classes/structllarp_1_1Crypto.md)** <br>library crypto configuration 
    * **struct [CryptoManager](Classes/structllarp_1_1CryptoManager.md)** 
    * **struct [DHTImmediateMessage](Classes/structllarp_1_1DHTImmediateMessage.md)** 
    * **struct [DiscardMessage](Classes/structllarp_1_1DiscardMessage.md)** 
    * **struct [DnsConfig](Classes/structllarp_1_1DnsConfig.md)** 
    * **struct [Encrypted](Classes/structllarp_1_1Encrypted.md)** <br>encrypted buffer base type 
    * **struct [EncryptedFrame](Classes/structllarp_1_1EncryptedFrame.md)** 
    * **class [EndpointBase](Classes/classllarp_1_1EndpointBase.md)** 
        * **struct [QUICMappingInfo](Classes/structllarp_1_1EndpointBase_1_1QUICMappingInfo.md)** <br>info about a quic mapping 
        * **struct [SendStat](Classes/structllarp_1_1EndpointBase_1_1SendStat.md)** 
    * **class [EventLoop](Classes/classllarp_1_1EventLoop.md)** 
    * **class [EventLoopRepeater](Classes/classllarp_1_1EventLoopRepeater.md)** <br>holds a repeated task on the event loop; the task is removed on destruction 
    * **class [EventLoopWakeup](Classes/classllarp_1_1EventLoopWakeup.md)** <br>distinct event loop waker upper; used to idempotently schedule a task on the next event loop 
    * **struct [ExitInfo](Classes/structllarp_1_1ExitInfo.md)** <br>deprecated don't use me , this is only for backwards compat 
    * **struct [ILinkLayer](Classes/structllarp_1_1ILinkLayer.md)** 
    * **struct [ILinkManager](Classes/structllarp_1_1ILinkManager.md)** 
    * **struct [ILinkMessage](Classes/structllarp_1_1ILinkMessage.md)** <br>parsed link layer message 
    * **struct [ILinkSession](Classes/structllarp_1_1ILinkSession.md)** 
    * **struct [IOutboundMessageHandler](Classes/structllarp_1_1IOutboundMessageHandler.md)** 
    * **struct [IOutboundSessionMaker](Classes/structllarp_1_1IOutboundSessionMaker.md)** 
    * **struct [IPRange](Classes/structllarp_1_1IPRange.md)** 
    * **struct [I_RCGossiper](Classes/structllarp_1_1I__RCGossiper.md)** 
    * **struct [I_RCLookupHandler](Classes/structllarp_1_1I__RCLookupHandler.md)** 
    * **struct [IdentitySecret](Classes/structllarp_1_1IdentitySecret.md)** <br>[IdentitySecret]() is a secret key from a service node secret seed. 
    * **struct [IpAddress](Classes/structllarp_1_1IpAddress.md)** <br>A struct that can represent either an IPv4 or IPv6 address. 
    * **struct [KeyManager](Classes/structllarp_1_1KeyManager.md)** <br>[KeyManager]() manages the cryptographic keys stored on disk for the local node. 
    * **struct [LR_CommitMessage](Classes/structllarp_1_1LR__CommitMessage.md)** 
    * **struct [LR_CommitRecord](Classes/structllarp_1_1LR__CommitRecord.md)** 
    * **struct [LR_StatusMessage](Classes/structllarp_1_1LR__StatusMessage.md)** 
    * **struct [LR_StatusRecord](Classes/structllarp_1_1LR__StatusRecord.md)** 
    * **struct [LinkFactory](Classes/structllarp_1_1LinkFactory.md)** <br>[LinkFactory]() is responsible for returning std::functions that create the link layer types. 
    * **struct [LinkIntroMessage](Classes/structllarp_1_1LinkIntroMessage.md)** 
    * **struct [LinkManager](Classes/structllarp_1_1LinkManager.md)** 
    * **struct [LinkMessageParser](Classes/structllarp_1_1LinkMessageParser.md)** 
    * **struct [LinksConfig](Classes/structllarp_1_1LinksConfig.md)** 
    * **struct [LogDebug](Classes/structllarp_1_1LogDebug.md)** 
    * **struct [LogError](Classes/structllarp_1_1LogError.md)** 
    * **struct [LogInfo](Classes/structllarp_1_1LogInfo.md)** 
    * **struct [LogTrace](Classes/structllarp_1_1LogTrace.md)** 
    * **struct [LogWarn](Classes/structllarp_1_1LogWarn.md)** 
    * **struct [LoggingConfig](Classes/structllarp_1_1LoggingConfig.md)** 
    * **struct [LokidConfig](Classes/structllarp_1_1LokidConfig.md)** 
    * **struct [NetID](Classes/structllarp_1_1NetID.md)** <br>[NetID](). 
    * **struct [NetworkConfig](Classes/structllarp_1_1NetworkConfig.md)** 
    * **class [NodeDB](Classes/classllarp_1_1NodeDB.md)** 
        * **struct [Entry](Classes/structllarp_1_1NodeDB_1_1Entry.md)** 
    * **struct [OptionDefinition](Classes/structllarp_1_1OptionDefinition.md)** <br>The primary type-aware implementation of [OptionDefinitionBase](Classes/structllarp_1_1OptionDefinitionBase.md), this templated class allows for implementations which can use fmt::format for conversion to string and std::istringstream for input from string. 
    * **struct [OptionDefinitionBase](Classes/structllarp_1_1OptionDefinitionBase.md)** <br>A base class for specifying config options and their constraints. 
    * **struct [OutboundMessageHandler](Classes/structllarp_1_1OutboundMessageHandler.md)** 
        * **struct [MessageQueueEntry](Classes/structllarp_1_1OutboundMessageHandler_1_1MessageQueueEntry.md)** 
        * **struct [MessageQueueStats](Classes/structllarp_1_1OutboundMessageHandler_1_1MessageQueueStats.md)** 
    * **struct [OutboundSessionMaker](Classes/structllarp_1_1OutboundSessionMaker.md)** 
    * **struct [OwnedBuffer](Classes/structllarp_1_1OwnedBuffer.md)** 
    * **struct [PathID_t](Classes/structllarp_1_1PathID__t.md)** 
    * **struct [PeerDb](Classes/structllarp_1_1PeerDb.md)** <br>Maintains a database of stats collected about the connections with our Service Node peers. 
    * **struct [PeerSelectionConfig](Classes/structllarp_1_1PeerSelectionConfig.md)** <br>config for path hop selection 
    * **struct [PeerStats](Classes/structllarp_1_1PeerStats.md)** 
    * **struct [PoW](Classes/structllarp_1_1PoW.md)** <br>proof of work 
    * **struct [PrivateKey](Classes/structllarp_1_1PrivateKey.md)** <br>[PrivateKey]() is similar to [SecretKey](Classes/structllarp_1_1SecretKey.md) except that it only stores the private key value and a hash, unlike [SecretKey](Classes/structllarp_1_1SecretKey.md) which stores the seed from which the private key and hash value are generated. 
    * **struct [Profiling](Classes/structllarp_1_1Profiling.md)** 
    * **struct [PubKey](Classes/structllarp_1_1PubKey.md)** 
    * **struct [RCGossiper](Classes/structllarp_1_1RCGossiper.md)** 
    * **struct [RCLookupHandler](Classes/structllarp_1_1RCLookupHandler.md)** 
    * **struct [RelayDownstreamMessage](Classes/structllarp_1_1RelayDownstreamMessage.md)** 
    * **struct [RelayUpstreamMessage](Classes/structllarp_1_1RelayUpstreamMessage.md)** 
    * **struct [RoutePoker](Classes/structllarp_1_1RoutePoker.md)** 
    * **struct [Router](Classes/structllarp_1_1Router.md)** 
    * **struct [RouterConfig](Classes/structllarp_1_1RouterConfig.md)** 
    * **struct [RouterContact](Classes/structllarp_1_1RouterContact.md)** <br>[RouterContact](). 
    * **struct [RouterID](Classes/structllarp_1_1RouterID.md)** 
    * **struct [RouterProfile](Classes/structllarp_1_1RouterProfile.md)** 
    * **struct [RouterVersion](Classes/structllarp_1_1RouterVersion.md)** 
    * **struct [SecretKey](Classes/structllarp_1_1SecretKey.md)** <br>Stores a sodium "secret key" value, which is actually the seed concatenated with the public key. 
    * **struct [SessionStats](Classes/structllarp_1_1SessionStats.md)** 
    * **struct [Signature](Classes/structllarp_1_1Signature.md)** 
    * **struct [SockAddr](Classes/structllarp_1_1SockAddr.md)** <br>A simple [SockAddr]() wrapper which provides a sockaddr_in (IPv4). 
    * **struct [UDPHandle](Classes/structllarp_1_1UDPHandle.md)** 
    * **namespace [apple](Namespaces/namespacellarp_1_1apple.md)** 
        * **struct [Context](Classes/structllarp_1_1apple_1_1Context.md)** 
        * **class [RouteManager](Classes/classllarp_1_1apple_1_1RouteManager.md)** 
        * **class [VPNInterface](Classes/classllarp_1_1apple_1_1VPNInterface.md)** 
        * **class [VPNPlatform](Classes/classllarp_1_1apple_1_1VPNPlatform.md)** 
    * **namespace [bits](Namespaces/namespacellarp_1_1bits.md)** 
    * **struct [buffer_printer](Classes/structllarp_1_1buffer__printer.md)** 
    * **namespace [config](Namespaces/namespacellarp_1_1config.md)** 
        * **struct [ClientOnly_t](Classes/structllarp_1_1config_1_1ClientOnly__t.md)** 
        * **struct [Comment](Classes/structllarp_1_1config_1_1Comment.md)** <br>Adds one or more comment lines to the option definition. 
        * **struct [Default](Classes/structllarp_1_1config_1_1Default.md)** <br>Wrapper to specify a default value to an [OptionDefinition](Classes/structllarp_1_1OptionDefinition.md). 
        * **struct [Deprecated_t](Classes/structllarp_1_1config_1_1Deprecated__t.md)** 
        * **struct [Hidden_t](Classes/structllarp_1_1config_1_1Hidden__t.md)** 
        * **struct [MultiValue_t](Classes/structllarp_1_1config_1_1MultiValue__t.md)** 
        * **struct [RelayOnly_t](Classes/structllarp_1_1config_1_1RelayOnly__t.md)** 
        * **struct [Required_t](Classes/structllarp_1_1config_1_1Required__t.md)** 
        * **struct [option_flag](Classes/structllarp_1_1config_1_1option__flag.md)** 
    * **namespace [consensus](Namespaces/namespacellarp_1_1consensus.md)** 
        * **namespace [detail](Namespaces/namespacellarp_1_1consensus_1_1detail.md)** 
            * **struct [incoming_test_state](Classes/structllarp_1_1consensus_1_1detail_1_1incoming__test__state.md)** 
            * **struct [nth_greater](Classes/structllarp_1_1consensus_1_1detail_1_1nth__greater.md)** 
        * **class [reachability_testing](Classes/classllarp_1_1consensus_1_1reachability__testing.md)** 
    * **namespace [constants](Namespaces/namespacellarp_1_1constants.md)** 
    * **namespace [detail](Namespaces/namespacellarp_1_1detail.md)** 
    * **namespace [dht](Namespaces/namespacellarp_1_1dht.md)** 
        * **struct [AbstractContext](Classes/structllarp_1_1dht_1_1AbstractContext.md)** 
        * **struct [Bucket](Classes/structllarp_1_1dht_1_1Bucket.md)** 
            * **struct [SetIntersector](Classes/structllarp_1_1dht_1_1Bucket_1_1SetIntersector.md)** 
        * **struct [ConsensusMessage](Classes/structllarp_1_1dht_1_1ConsensusMessage.md)** 
        * **struct [ExploreNetworkJob](Classes/structllarp_1_1dht_1_1ExploreNetworkJob.md)** 
        * **struct [FindIntroMessage](Classes/structllarp_1_1dht_1_1FindIntroMessage.md)** 
        * **struct [FindNameMessage](Classes/structllarp_1_1dht_1_1FindNameMessage.md)** 
        * **struct [FindRouterMessage](Classes/structllarp_1_1dht_1_1FindRouterMessage.md)** 
        * **struct [GotIntroMessage](Classes/structllarp_1_1dht_1_1GotIntroMessage.md)** <br>acknowledgement to [PublishIntroMessage]() or reply to [FindIntroMessage](Classes/structllarp_1_1dht_1_1FindIntroMessage.md)
        * **struct [GotNameMessage](Classes/structllarp_1_1dht_1_1GotNameMessage.md)** 
        * **struct [GotRouterMessage](Classes/structllarp_1_1dht_1_1GotRouterMessage.md)** 
        * **struct [IMessage](Classes/structllarp_1_1dht_1_1IMessage.md)** 
        * **struct [ISNode](Classes/structllarp_1_1dht_1_1ISNode.md)** 
        * **struct [Key_t](Classes/structllarp_1_1dht_1_1Key__t.md)** 
        * **struct [LocalPublishServiceJob](Classes/structllarp_1_1dht_1_1LocalPublishServiceJob.md)** 
        * **struct [LocalRouterLookup](Classes/structllarp_1_1dht_1_1LocalRouterLookup.md)** 
        * **struct [LocalServiceAddressLookup](Classes/structllarp_1_1dht_1_1LocalServiceAddressLookup.md)** 
        * **struct [LocalTagLookup](Classes/structllarp_1_1dht_1_1LocalTagLookup.md)** 
        * **struct [PublishIntroMessage](Classes/structllarp_1_1dht_1_1PublishIntroMessage.md)** 
        * **struct [PublishServiceJob](Classes/structllarp_1_1dht_1_1PublishServiceJob.md)** 
        * **struct [RCNode](Classes/structllarp_1_1dht_1_1RCNode.md)** 
        * **struct [RecursiveRouterLookup](Classes/structllarp_1_1dht_1_1RecursiveRouterLookup.md)** 
        * **struct [RelayedFindRouterMessage](Classes/structllarp_1_1dht_1_1RelayedFindRouterMessage.md)** <br>variant of [FindRouterMessage](Classes/structllarp_1_1dht_1_1FindRouterMessage.md) relayed via path 
        * **struct [RelayedGotIntroMessage](Classes/structllarp_1_1dht_1_1RelayedGotIntroMessage.md)** 
        * **struct [ServiceAddressLookup](Classes/structllarp_1_1dht_1_1ServiceAddressLookup.md)** 
        * **struct [TX](Classes/structllarp_1_1dht_1_1TX.md)** 
        * **struct [TXHolder](Classes/structllarp_1_1dht_1_1TXHolder.md)** 
        * **struct [TXOwner](Classes/structllarp_1_1dht_1_1TXOwner.md)** 
        * **struct [TagLookup](Classes/structllarp_1_1dht_1_1TagLookup.md)** 
        * **struct [XorMetric](Classes/structllarp_1_1dht_1_1XorMetric.md)** 
    * **namespace [dns](Namespaces/namespacellarp_1_1dns.md)** 
        * **class [I_Platform](Classes/classllarp_1_1dns_1_1I__Platform.md)** <br>sets dns settings in a platform dependant way 
        * **struct [Message](Classes/structllarp_1_1dns_1_1Message.md)** 
        * **struct [MessageHeader](Classes/structllarp_1_1dns_1_1MessageHeader.md)** 
        * **class [Multi_Platform](Classes/classllarp_1_1dns_1_1Multi__Platform.md)** <br>a collection of dns platforms that are tried in order when setting dns 
        * **class [Null_Platform](Classes/classllarp_1_1dns_1_1Null__Platform.md)** <br>a dns platform does silently does nothing, successfully 
        * **class [PacketSource_Base](Classes/classllarp_1_1dns_1_1PacketSource__Base.md)** 
        * **class [PacketSource_Wrapper](Classes/classllarp_1_1dns_1_1PacketSource__Wrapper.md)** <br>a packet source which will override the sendto function of an wrapped packet source to construct a raw ip packet as a reply 
        * **class [QueryJob](Classes/classllarp_1_1dns_1_1QueryJob.md)** <br>non complex implementation of [QueryJob_Base](Classes/classllarp_1_1dns_1_1QueryJob__Base.md) for use in things that only ever called on the mainloop thread 
        * **class [QueryJob_Base](Classes/classllarp_1_1dns_1_1QueryJob__Base.md)** <br>a job handling 1 dns query 
        * **struct [Question](Classes/structllarp_1_1dns_1_1Question.md)** 
        * **class [Resolver_Base](Classes/classllarp_1_1dns_1_1Resolver__Base.md)** <br>handler of dns query hooking intercepts dns for internal processing 
        * **struct [ResourceRecord](Classes/structllarp_1_1dns_1_1ResourceRecord.md)** 
        * **struct [SRVData](Classes/structllarp_1_1dns_1_1SRVData.md)** 
        * **struct [Serialize](Classes/structllarp_1_1dns_1_1Serialize.md)** <br>base type for serializable dns entities 
        * **class [Server](Classes/classllarp_1_1dns_1_1Server.md)** 
        * **namespace [nm](Namespaces/namespacellarp_1_1dns_1_1nm.md)** 
            * **class [Platform](Classes/classllarp_1_1dns_1_1nm_1_1Platform.md)** 
        * **namespace [sd](Namespaces/namespacellarp_1_1dns_1_1sd.md)** 
            * **class [Platform](Classes/classllarp_1_1dns_1_1sd_1_1Platform.md)** <br>a dns platform that sets dns via systemd resolved 
    * **namespace [exit](Namespaces/namespacellarp_1_1exit.md)** 
        * **struct [BaseSession](Classes/structllarp_1_1exit_1_1BaseSession.md)** <br>a persisting exit session with an exit router 
            * **struct [DownstreamPktSorter](Classes/structllarp_1_1exit_1_1BaseSession_1_1DownstreamPktSorter.md)** 
        * **struct [Context](Classes/structllarp_1_1exit_1_1Context.md)** <br>owner of all the exit endpoints 
        * **struct [Endpoint](Classes/structllarp_1_1exit_1_1Endpoint.md)** <br>persistant exit state for 1 identity on the exit node 
            * **struct [UpstreamBuffer](Classes/structllarp_1_1exit_1_1Endpoint_1_1UpstreamBuffer.md)** 
        * **struct [ExitSession](Classes/structllarp_1_1exit_1_1ExitSession.md)** 
        * **struct [Policy](Classes/structllarp_1_1exit_1_1Policy.md)** 
        * **struct [SNodeSession](Classes/structllarp_1_1exit_1_1SNodeSession.md)** 
    * **namespace [handlers](Namespaces/namespacellarp_1_1handlers.md)** 
        * **struct [ExitEndpoint](Classes/structllarp_1_1handlers_1_1ExitEndpoint.md)** 
        * **struct [NullEndpoint](Classes/structllarp_1_1handlers_1_1NullEndpoint.md)** 
        * **struct [TunEndpoint](Classes/structllarp_1_1handlers_1_1TunEndpoint.md)** 
            * **struct [WritePacket](Classes/structllarp_1_1handlers_1_1TunEndpoint_1_1WritePacket.md)** 
    * **struct [huint_t](Classes/structllarp_1_1huint__t.md)** 
    * **struct [is_scoped_enum](Classes/structllarp_1_1is__scoped__enum.md)** 
    * **struct [is_scoped_enum< T, true >](Classes/structllarp_1_1is__scoped__enum_3_01T_00_01true_01_4.md)** 
    * **namespace [iwp](Namespaces/namespacellarp_1_1iwp.md)** 
        * **struct [InboundMessage](Classes/structllarp_1_1iwp_1_1InboundMessage.md)** 
        * **struct [LinkLayer](Classes/structllarp_1_1iwp_1_1LinkLayer.md)** 
        * **struct [OutboundMessage](Classes/structllarp_1_1iwp_1_1OutboundMessage.md)** 
        * **struct [Session](Classes/structllarp_1_1iwp_1_1Session.md)** 
    * **namespace [json](Namespaces/namespacellarp_1_1json.md)** 
        * **struct [IParser](Classes/structllarp_1_1json_1_1IParser.md)** 
    * **namespace [linux](Namespaces/namespacellarp_1_1linux.md)** 
        * **class [DBUS](Classes/classllarp_1_1linux_1_1DBUS.md)** 
            * **struct [sd_bus_deleter](Classes/structllarp_1_1linux_1_1DBUS_1_1sd__bus__deleter.md)** 
        * **class [dbus_call_exception](Classes/classllarp_1_1linux_1_1dbus__call__exception.md)** <br>exception for a failed calling of a dbus method 
        * **class [system_bus_exception](Classes/classllarp_1_1linux_1_1system__bus__exception.md)** <br>exception for connecting to system bus 
    * **namespace [log_detail](Namespaces/namespacellarp_1_1log__detail.md)** 
        * **struct [concat_args_fmt_impl](Classes/structllarp_1_1log__detail_1_1concat__args__fmt__impl.md)** 
        * **struct [concat_args_fmt_impl< std::integer_sequence< size_t, I... > >](Classes/structllarp_1_1log__detail_1_1concat__args__fmt__impl_3_01std_1_1integer__sequence_3_01size__t_00_01I_8_8_8_01_4_01_4.md)** 
    * **namespace [logging](Namespaces/namespacellarp_1_1logging.md)** 
        * **class [CallbackSink](Classes/classllarp_1_1logging_1_1CallbackSink.md)** 
    * **namespace [net](Namespaces/namespacellarp_1_1net.md)** 
        * **struct [IPPacket](Classes/structllarp_1_1net_1_1IPPacket.md)** <br>an Packet 
            * **struct [CompareOrder](Classes/structllarp_1_1net_1_1IPPacket_1_1CompareOrder.md)** 
            * **struct [CompareSize](Classes/structllarp_1_1net_1_1IPPacket_1_1CompareSize.md)** 
        * **struct [IPRangeMap](Classes/structllarp_1_1net_1_1IPRangeMap.md)** <br>a container that maps an ip range to a value that allows you to lookup key by range hit 
            * **struct [CompareEntry](Classes/structllarp_1_1net_1_1IPRangeMap_1_1CompareEntry.md)** 
        * **struct [InterfaceInfo](Classes/structllarp_1_1net_1_1InterfaceInfo.md)** <br>info about a network interface lokinet does not own 
        * **class [Platform](Classes/classllarp_1_1net_1_1Platform.md)** <br>network platform (all methods virtual so it can be mocked by unit tests) 
        * **struct [ProtocolInfo](Classes/structllarp_1_1net_1_1ProtocolInfo.md)** <br>information about an IP protocol 
        * **struct [TrafficPolicy](Classes/structllarp_1_1net_1_1TrafficPolicy.md)** <br>information about what traffic an endpoint will carry 
        * **struct [ip_header_be](Classes/structllarp_1_1net_1_1ip__header__be.md)** 
        * **struct [ip_header_le](Classes/structllarp_1_1net_1_1ip__header__le.md)** 
        * **struct [ipv6_header](Classes/structllarp_1_1net_1_1ipv6__header.md)** 
        * **struct [ipv6_header_preamble_be](Classes/structllarp_1_1net_1_1ipv6__header__preamble__be.md)** 
        * **struct [ipv6_header_preamble_le](Classes/structllarp_1_1net_1_1ipv6__header__preamble__le.md)** 
    * **struct [nuint_t](Classes/structllarp_1_1nuint__t.md)** 
    * **namespace [path](Namespaces/namespacellarp_1_1path.md)** 
        * **class [BuildLimiter](Classes/classllarp_1_1path_1_1BuildLimiter.md)** <br>limiter for path builds prevents overload and such 
        * **struct [BuildStats](Classes/structllarp_1_1path_1_1BuildStats.md)** <br>Stats about all our path builds. 
        * **struct [Builder](Classes/structllarp_1_1path_1_1Builder.md)** 
        * **struct [IHopHandler](Classes/structllarp_1_1path_1_1IHopHandler.md)** 
        * **struct [Path](Classes/structllarp_1_1path_1_1Path.md)** <br>A path we made. 
            * **struct [Endpoint_Equals](Classes/structllarp_1_1path_1_1Path_1_1Endpoint__Equals.md)** <br>comparision for equal endpoints 
            * **struct [Endpoint_Hash](Classes/structllarp_1_1path_1_1Path_1_1Endpoint__Hash.md)** <br>hash for std::shared_ptr<Path> by path endpoint 
            * **struct [Hash](Classes/structllarp_1_1path_1_1Path_1_1Hash.md)** 
            * **struct [Ptr_Hash](Classes/structllarp_1_1path_1_1Path_1_1Ptr__Hash.md)** <br>hash for std::shared_ptr<Path> 
        * **struct [PathContext](Classes/structllarp_1_1path_1_1PathContext.md)** 
            * **struct [SyncOwnedPathsMap_t](Classes/structllarp_1_1path_1_1PathContext_1_1SyncOwnedPathsMap__t.md)** 
            * **struct [SyncTransitMap_t](Classes/structllarp_1_1path_1_1PathContext_1_1SyncTransitMap__t.md)** 
        * **struct [PathHopConfig](Classes/structllarp_1_1path_1_1PathHopConfig.md)** <br>configuration for a single hop when building a path 
        * **struct [PathSet](Classes/structllarp_1_1path_1_1PathSet.md)** <br>a set of paths owned by an entity 
        * **struct [TransitHop](Classes/structllarp_1_1path_1_1TransitHop.md)** 
        * **struct [TransitHopInfo](Classes/structllarp_1_1path_1_1TransitHopInfo.md)** 
    * **namespace [platform](Namespaces/namespacellarp_1_1platform.md)** <br>namespace for platform feature detection constexprs 
    * **namespace [quic](Namespaces/namespacellarp_1_1quic.md)** 
        * **class [Address](Classes/classllarp_1_1quic_1_1Address.md)** 
        * **class [Client](Classes/classllarp_1_1quic_1_1Client.md)** 
        * **class [Connection](Classes/classllarp_1_1quic_1_1Connection.md)** 
            * **struct [connection_deleter](Classes/structllarp_1_1quic_1_1Connection_1_1connection__deleter.md)** 
        * **struct [ConnectionID](Classes/structllarp_1_1quic_1_1ConnectionID.md)** 
        * **class [Endpoint](Classes/classllarp_1_1quic_1_1Endpoint.md)** <br>QUIC Tunnel [Endpoint](); this is the class that implements either end of a quic tunnel for both servers and clients. 
            * **struct [version_info](Classes/structllarp_1_1quic_1_1Endpoint_1_1version__info.md)** 
        * **struct [NullCrypto](Classes/structllarp_1_1quic_1_1NullCrypto.md)** 
        * **struct [Packet](Classes/structllarp_1_1quic_1_1Packet.md)** 
        * **struct [Path](Classes/structllarp_1_1quic_1_1Path.md)** 
        * **class [Server](Classes/classllarp_1_1quic_1_1Server.md)** 
        * **class [Stream](Classes/classllarp_1_1quic_1_1Stream.md)** 
        * **struct [StreamID](Classes/structllarp_1_1quic_1_1StreamID.md)** 
        * **class [TunnelManager](Classes/classllarp_1_1quic_1_1TunnelManager.md)** <br>Manager class for incoming and outgoing QUIC tunnels. 
            * **struct [ClientTunnel](Classes/structllarp_1_1quic_1_1TunnelManager_1_1ClientTunnel.md)** 
        * **struct [io_result](Classes/structllarp_1_1quic_1_1io__result.md)** 
        * **namespace [tunnel](Namespaces/namespacellarp_1_1quic_1_1tunnel.md)** 
    * **namespace [routing](Namespaces/namespacellarp_1_1routing.md)** 
        * **struct [CloseExitMessage](Classes/structllarp_1_1routing_1_1CloseExitMessage.md)** 
        * **struct [DHTMessage](Classes/structllarp_1_1routing_1_1DHTMessage.md)** 
        * **struct [DataDiscardMessage](Classes/structllarp_1_1routing_1_1DataDiscardMessage.md)** 
        * **struct [GrantExitMessage](Classes/structllarp_1_1routing_1_1GrantExitMessage.md)** 
        * **struct [IMessage](Classes/structllarp_1_1routing_1_1IMessage.md)** 
        * **struct [IMessageHandler](Classes/structllarp_1_1routing_1_1IMessageHandler.md)** 
        * **struct [InboundMessageParser](Classes/structllarp_1_1routing_1_1InboundMessageParser.md)** 
        * **struct [ObtainExitMessage](Classes/structllarp_1_1routing_1_1ObtainExitMessage.md)** 
        * **struct [PathConfirmMessage](Classes/structllarp_1_1routing_1_1PathConfirmMessage.md)** 
        * **struct [PathLatencyMessage](Classes/structllarp_1_1routing_1_1PathLatencyMessage.md)** 
        * **struct [PathTransferMessage](Classes/structllarp_1_1routing_1_1PathTransferMessage.md)** 
        * **struct [RejectExitMessage](Classes/structllarp_1_1routing_1_1RejectExitMessage.md)** 
        * **struct [TransferTrafficMessage](Classes/structllarp_1_1routing_1_1TransferTrafficMessage.md)** 
        * **struct [UpdateExitMessage](Classes/structllarp_1_1routing_1_1UpdateExitMessage.md)** 
        * **struct [UpdateExitVerifyMessage](Classes/structllarp_1_1routing_1_1UpdateExitVerifyMessage.md)** 
    * **namespace [rpc](Namespaces/namespacellarp_1_1rpc.md)** 
        * **struct [EndpointAuthRPC](Classes/structllarp_1_1rpc_1_1EndpointAuthRPC.md)** 
        * **struct [LokidRpcClient](Classes/structllarp_1_1rpc_1_1LokidRpcClient.md)** <br>The [LokidRpcClient]() uses loki-mq to talk to make API requests to lokid. 
        * **struct [RpcServer](Classes/structllarp_1_1rpc_1_1RpcServer.md)** 
    * **namespace [service](Namespaces/namespacellarp_1_1service.md)** 
        * **struct [Address](Classes/structllarp_1_1service_1_1Address.md)** <br>Snapp [Address](). 
        * **struct [AsyncKeyExchange](Classes/structllarp_1_1service_1_1AsyncKeyExchange.md)** 
        * **struct [AuthInfo](Classes/structllarp_1_1service_1_1AuthInfo.md)** <br>info needed by clients in order to authenticate to a remote endpoint 
        * **struct [AuthResult](Classes/structllarp_1_1service_1_1AuthResult.md)** <br>auth result object with code and reason 
        * **struct [CompareIntroTimestamp](Classes/structllarp_1_1service_1_1CompareIntroTimestamp.md)** <br>comparator for introset timestamp 
        * **struct [Context](Classes/structllarp_1_1service_1_1Context.md)** <br>holds all the hidden service endpoints we own this should be refactored (removed entirely...?) now that lokinet only supports one endpoint per instance 
        * **struct [ConvoTag](Classes/structllarp_1_1service_1_1ConvoTag.md)** 
        * **struct [EncryptedIntroSet](Classes/structllarp_1_1service_1_1EncryptedIntroSet.md)** <br>public version of the introset that is encrypted 
        * **struct [EncryptedName](Classes/structllarp_1_1service_1_1EncryptedName.md)** 
        * **struct [Endpoint](Classes/structllarp_1_1service_1_1Endpoint.md)** 
        * **struct [EndpointState](Classes/structllarp_1_1service_1_1EndpointState.md)** 
        * **struct [EndpointUtil](Classes/structllarp_1_1service_1_1EndpointUtil.md)** 
        * **struct [HiddenServiceAddressLookup](Classes/structllarp_1_1service_1_1HiddenServiceAddressLookup.md)** 
        * **struct [IAuthPolicy](Classes/structllarp_1_1service_1_1IAuthPolicy.md)** 
        * **struct [IDataHandler](Classes/structllarp_1_1service_1_1IDataHandler.md)** 
        * **struct [ILookupHolder](Classes/structllarp_1_1service_1_1ILookupHolder.md)** 
        * **struct [IServiceLookup](Classes/structllarp_1_1service_1_1IServiceLookup.md)** 
        * **struct [Identity](Classes/structllarp_1_1service_1_1Identity.md)** 
        * **struct [IntroSet](Classes/structllarp_1_1service_1_1IntroSet.md)** 
        * **struct [Introduction](Classes/structllarp_1_1service_1_1Introduction.md)** 
        * **class [LNSLookupTracker](Classes/classllarp_1_1service_1_1LNSLookupTracker.md)** <br>tracks and manages consensus of lns names we fetch from the network 
            * **struct [LookupInfo](Classes/structllarp_1_1service_1_1LNSLookupTracker_1_1LookupInfo.md)** 
        * **struct [OutboundContext](Classes/structllarp_1_1service_1_1OutboundContext.md)** <br>context needed to initiate an outbound hidden service session 
        * **struct [PendingBuffer](Classes/structllarp_1_1service_1_1PendingBuffer.md)** 
        * **struct [ProtocolFrame](Classes/structllarp_1_1service_1_1ProtocolFrame.md)** <br>outer message 
        * **struct [ProtocolMessage](Classes/structllarp_1_1service_1_1ProtocolMessage.md)** <br>inner message 
        * **struct [RecvDataEvent](Classes/structllarp_1_1service_1_1RecvDataEvent.md)** 
        * **struct [RouterLookupJob](Classes/structllarp_1_1service_1_1RouterLookupJob.md)** 
        * **struct [SendContext](Classes/structllarp_1_1service_1_1SendContext.md)** 
        * **struct [ServiceInfo](Classes/structllarp_1_1service_1_1ServiceInfo.md)** 
        * **struct [Session](Classes/structllarp_1_1service_1_1Session.md)** 
        * **struct [Tag](Classes/structllarp_1_1service_1_1Tag.md)** 
    * **namespace [simulate](Namespaces/namespacellarp_1_1simulate.md)** 
        * **struct [Simulation](Classes/structllarp_1_1simulate_1_1Simulation.md)** 
    * **namespace [sodium](Namespaces/namespacellarp_1_1sodium.md)** 
        * **struct [CryptoLibSodium](Classes/structllarp_1_1sodium_1_1CryptoLibSodium.md)** 
    * **namespace [sys](Namespaces/namespacellarp_1_1sys.md)** 
        * **class [I_SystemLayerManager](Classes/classllarp_1_1sys_1_1I__SystemLayerManager.md)** <br>interface type for interacting with the os dependant system layer 
        * **class [NOP_SystemLayerHandler](Classes/classllarp_1_1sys_1_1NOP__SystemLayerHandler.md)** 
        * **class [SVC_Manager](Classes/classllarp_1_1sys_1_1SVC__Manager.md)** 
    * **namespace [thread](Namespaces/namespacellarp_1_1thread.md)** 
        * **class [Queue](Classes/classllarp_1_1thread_1_1Queue.md)** 
        * **class [QueueManager](Classes/classllarp_1_1thread_1_1QueueManager.md)** 
        * **class [QueuePopGuard](Classes/classllarp_1_1thread_1_1QueuePopGuard.md)** 
        * **class [QueuePushGuard](Classes/classllarp_1_1thread_1_1QueuePushGuard.md)** 
    * **struct [uint128_t](Classes/structllarp_1_1uint128__t.md)** <br>128-bit unsigned integer. 
    * **namespace [util](Namespaces/namespacellarp_1_1util.md)** 
        * **class [Barrier](Classes/classllarp_1_1util_1_1Barrier.md)** <br>[Barrier]() class that blocks all threads until the high water mark of threads (set during construction) is reached, then releases them all. 
        * **struct [ContentionKiller](Classes/structllarp_1_1util_1_1ContentionKiller.md)** 
        * **struct [DecayingHashSet](Classes/structllarp_1_1util_1_1DecayingHashSet.md)** 
        * **struct [DecayingHashTable](Classes/structllarp_1_1util_1_1DecayingHashTable.md)** 
        * **struct [FileHash](Classes/structllarp_1_1util_1_1FileHash.md)** 
        * **struct [NullLock](Classes/structllarp_1_1util_1_1NullLock.md)** <br>a lock that does nothing 
        * **struct [NullMutex](Classes/structllarp_1_1util_1_1NullMutex.md)** <br>a mutex that does nothing 
        * **class [Semaphore](Classes/classllarp_1_1util_1_1Semaphore.md)** 
        * **class [bind_socket_error](Classes/classllarp_1_1util_1_1bind__socket__error.md)** 
    * **namespace [uv](Namespaces/namespacellarp_1_1uv.md)** 
        * **class [Loop](Classes/classllarp_1_1uv_1_1Loop.md)** 
    * **namespace [vpn](Namespaces/namespacellarp_1_1vpn.md)** 
        * **class [AndroidInterface](Classes/classllarp_1_1vpn_1_1AndroidInterface.md)** 
        * **class [AndroidPlatform](Classes/classllarp_1_1vpn_1_1AndroidPlatform.md)** 
        * **class [AndroidRouteManager](Classes/classllarp_1_1vpn_1_1AndroidRouteManager.md)** 
        * **struct [EgresLayer4Handler](Classes/structllarp_1_1vpn_1_1EgresLayer4Handler.md)** 
        * **class [EgresPacketRouter](Classes/classllarp_1_1vpn_1_1EgresPacketRouter.md)** 
        * **struct [IOCTL](Classes/structllarp_1_1vpn_1_1IOCTL.md)** 
        * **class [IRouteManager](Classes/classllarp_1_1vpn_1_1IRouteManager.md)** 
        * **class [I_PacketInterceptor](Classes/classllarp_1_1vpn_1_1I__PacketInterceptor.md)** 
        * **class [I_Packet_IO](Classes/classllarp_1_1vpn_1_1I__Packet__IO.md)** 
        * **struct [InterfaceAddress](Classes/structllarp_1_1vpn_1_1InterfaceAddress.md)** 
        * **struct [InterfaceInfo](Classes/structllarp_1_1vpn_1_1InterfaceInfo.md)** 
        * **struct [Layer4Handler](Classes/structllarp_1_1vpn_1_1Layer4Handler.md)** 
        * **class [LinuxInterface](Classes/classllarp_1_1vpn_1_1LinuxInterface.md)** 
        * **class [LinuxPlatform](Classes/classllarp_1_1vpn_1_1LinuxPlatform.md)** 
        * **class [LinuxRouteManager](Classes/classllarp_1_1vpn_1_1LinuxRouteManager.md)** 
            * **struct [NLRequest](Classes/structllarp_1_1vpn_1_1LinuxRouteManager_1_1NLRequest.md)** 
            * **struct [_inet_addr](Classes/structllarp_1_1vpn_1_1LinuxRouteManager_1_1__inet__addr.md)** 
        * **class [NetworkInterface](Classes/classllarp_1_1vpn_1_1NetworkInterface.md)** <br>a vpn network interface 
        * **class [PacketRouter](Classes/classllarp_1_1vpn_1_1PacketRouter.md)** 
        * **class [Platform](Classes/classllarp_1_1vpn_1_1Platform.md)** <br>a vpn platform responsible for obtaining vpn interfaces 
        * **struct [in6_ifreq](Classes/structllarp_1_1vpn_1_1in6__ifreq.md)** 
        * **class [permission_error](Classes/classllarp_1_1vpn_1_1permission__error.md)** 
    * **namespace [win32](Namespaces/namespacellarp_1_1win32.md)** 
        * **class [DeferExec](Classes/classllarp_1_1win32_1_1DeferExec.md)** <br>a wrapper for [OneShotExec](Classes/classllarp_1_1win32_1_1OneShotExec.md) that calls the thing we want on destruction 
        * **class [OneShotExec](Classes/classllarp_1_1win32_1_1OneShotExec.md)** <br>RAII wrapper for calling a subprocess in win32 for parallel executuion in the same scope destructor blocks until timeout has been hit of the execution of the subprocses finished. 
        * **class [VPNPlatform](Classes/classllarp_1_1win32_1_1VPNPlatform.md)** 
        * **namespace [WinDivert](Namespaces/namespacellarp_1_1win32_1_1WinDivert.md)** 
        * **namespace [detail](Namespaces/namespacellarp_1_1win32_1_1detail.md)** 
        * **class [error](Classes/classllarp_1_1win32_1_1error.md)** 
        * **namespace [wintun](Namespaces/namespacellarp_1_1win32_1_1wintun.md)** 
* **namespace [llarp::net::@106](Namespaces/namespacellarp_1_1net_1_1_0d106.md)** <br>hides the nuint types used with net_port_t / net_ipv4addr_t / net_ipv6addr_t 
* **struct [llarp_buffer_t](Classes/structllarp__buffer__t.md)** <br>TODO: replace usage of these with std::span (via a backport until we move to C++20). 
* **struct [llarp_dht_context](Classes/structllarp__dht__context.md)** 
* **namespace [oxen](Namespaces/namespaceoxen.md)** 
    * **namespace [log](Namespaces/namespaceoxen_1_1log.md)** 
* **namespace [oxen::log::literals](Namespaces/namespaceoxen_1_1log_1_1literals.md)** 
* **namespace [oxenc](Namespaces/namespaceoxenc.md)** 
* **namespace [oxenmq](Namespaces/namespaceoxenmq.md)** 
* **namespace [spdlog](Namespaces/namespacespdlog.md)** 
    * **namespace [sinks](Namespaces/namespacespdlog_1_1sinks.md)** 
* **namespace [sqlite_orm](Namespaces/namespacesqlite__orm.md)** <br>"custom" types for [sqlite_orm]() reference: [https://github.com/fnc12/sqlite_orm/blob/master/examples/enum_binding.cpp](https://github.com/fnc12/sqlite_orm/blob/master/examples/enum_binding.cpp)
    * **struct [field_printer< llarp::RouterID >](Classes/structsqlite__orm_1_1field__printer_3_01llarp_1_1RouterID_01_4.md)** 
    * **struct [field_printer< llarp_time_t >](Classes/structsqlite__orm_1_1field__printer_3_01llarp__time__t_01_4.md)** 
    * **struct [row_extractor< llarp::RouterID >](Classes/structsqlite__orm_1_1row__extractor_3_01llarp_1_1RouterID_01_4.md)** 
    * **struct [row_extractor< llarp_time_t >](Classes/structsqlite__orm_1_1row__extractor_3_01llarp__time__t_01_4.md)** 
    * **struct [statement_binder< llarp::RouterID >](Classes/structsqlite__orm_1_1statement__binder_3_01llarp_1_1RouterID_01_4.md)** 
    * **struct [statement_binder< llarp_time_t >](Classes/structsqlite__orm_1_1statement__binder_3_01llarp__time__t_01_4.md)** 
    * **struct [type_printer< llarp::RouterID >](Classes/structsqlite__orm_1_1type__printer_3_01llarp_1_1RouterID_01_4.md)** <br>RouterID serialization. 
    * **struct [type_printer< llarp_time_t >](Classes/structsqlite__orm_1_1type__printer_3_01llarp__time__t_01_4.md)** <br>llarp_time_t serialization 
* **namespace [std](Namespaces/namespacestd.md)** <br>STL namespace. 
* **namespace [std::chrono_literals](Namespaces/namespacestd_1_1chrono__literals.md)** 
* **namespace [std::filesystem](Namespaces/namespacestd_1_1filesystem.md)** 
* **struct [std::hash< llarp::AddressInfo >](Classes/structstd_1_1hash_3_01llarp_1_1AddressInfo_01_4.md)** 
* **struct [std::hash< llarp::AlignedBuffer< sz > >](Classes/structstd_1_1hash_3_01llarp_1_1AlignedBuffer_3_01sz_01_4_01_4.md)** 
* **struct [std::hash< llarp::IPRange >](Classes/structstd_1_1hash_3_01llarp_1_1IPRange_01_4.md)** 
* **struct [std::hash< llarp::IpAddress >](Classes/structstd_1_1hash_3_01llarp_1_1IpAddress_01_4.md)** 
* **struct [std::hash< llarp::PathID_t >](Classes/structstd_1_1hash_3_01llarp_1_1PathID__t_01_4.md)** 
* **struct [std::hash< llarp::PubKey >](Classes/structstd_1_1hash_3_01llarp_1_1PubKey_01_4.md)** 
* **struct [std::hash< llarp::RouterContact >](Classes/structstd_1_1hash_3_01llarp_1_1RouterContact_01_4.md)** 
* **struct [std::hash< llarp::RouterID >](Classes/structstd_1_1hash_3_01llarp_1_1RouterID_01_4.md)** 
* **struct [std::hash< llarp::SockAddr >](Classes/structstd_1_1hash_3_01llarp_1_1SockAddr_01_4.md)** 
* **struct [std::hash< llarp::dht::TXOwner >](Classes/structstd_1_1hash_3_01llarp_1_1dht_1_1TXOwner_01_4.md)** 
* **struct [std::hash< llarp::dns::SRVData >](Classes/structstd_1_1hash_3_01llarp_1_1dns_1_1SRVData_01_4.md)** 
* **struct [std::hash< llarp::huint_t< UInt_t > >](Classes/structstd_1_1hash_3_01llarp_1_1huint__t_3_01UInt__t_01_4_01_4.md)** 
* **struct [std::hash< llarp::nuint_t< UInt_t > >](Classes/structstd_1_1hash_3_01llarp_1_1nuint__t_3_01UInt__t_01_4_01_4.md)** 
* **struct [std::hash< llarp::path::TransitHopInfo >](Classes/structstd_1_1hash_3_01llarp_1_1path_1_1TransitHopInfo_01_4.md)** 
* **struct [std::hash< llarp::quic::ConnectionID >](Classes/structstd_1_1hash_3_01llarp_1_1quic_1_1ConnectionID_01_4.md)** 
* **struct [std::hash< llarp::quic::StreamID >](Classes/structstd_1_1hash_3_01llarp_1_1quic_1_1StreamID_01_4.md)** 
* **struct [std::hash< llarp::service::Address >](Classes/structstd_1_1hash_3_01llarp_1_1service_1_1Address_01_4.md)** 
* **struct [std::hash< llarp::service::ConvoTag >](Classes/structstd_1_1hash_3_01llarp_1_1service_1_1ConvoTag_01_4.md)** 
* **struct [std::hash< llarp::service::Introduction >](Classes/structstd_1_1hash_3_01llarp_1_1service_1_1Introduction_01_4.md)** 
* **struct [std::hash< llarp::service::Tag >](Classes/structstd_1_1hash_3_01llarp_1_1service_1_1Tag_01_4.md)** 
* **struct [std::hash< llarp::uint128_t >](Classes/structstd_1_1hash_3_01llarp_1_1uint128__t_01_4.md)** 
* **struct [std::hash< std::pair< llarp::RouterID, llarp::PathID_t > >](Classes/structstd_1_1hash_3_01std_1_1pair_3_01llarp_1_1RouterID_00_01llarp_1_1PathID__t_01_4_01_4.md)** 
* **namespace [std::literals](Namespaces/namespacestd_1_1literals.md)** 
* **namespace [tooling](Namespaces/namespacetooling.md)** 
    * **struct [ConnectionAttemptEvent](Classes/structtooling_1_1ConnectionAttemptEvent.md)** 
    * **struct [FindRouterEvent](Classes/structtooling_1_1FindRouterEvent.md)** 
    * **struct [FindRouterReceivedEvent](Classes/structtooling_1_1FindRouterReceivedEvent.md)** 
    * **struct [FindRouterSentEvent](Classes/structtooling_1_1FindRouterSentEvent.md)** 
    * **struct [GotIntroReceivedEvent](Classes/structtooling_1_1GotIntroReceivedEvent.md)** 
    * **struct [HiveContext](Classes/structtooling_1_1HiveContext.md)** <br>[HiveContext]() is a subclass of llarp::Context which allows [RouterHive]() to perform custom behavior which might be undesirable in production code. 
    * **struct [HiveRouter](Classes/structtooling_1_1HiveRouter.md)** <br>[HiveRouter]() is a subclass of Router which overrides specific behavior in order to perform testing-related functions. 
    * **struct [LinkSessionEstablishedEvent](Classes/structtooling_1_1LinkSessionEstablishedEvent.md)** 
    * **struct [PathAttemptEvent](Classes/structtooling_1_1PathAttemptEvent.md)** 
    * **struct [PathBuildRejectedEvent](Classes/structtooling_1_1PathBuildRejectedEvent.md)** 
    * **struct [PathRequestReceivedEvent](Classes/structtooling_1_1PathRequestReceivedEvent.md)** 
    * **struct [PathStatusReceivedEvent](Classes/structtooling_1_1PathStatusReceivedEvent.md)** 
    * **struct [PubIntroReceivedEvent](Classes/structtooling_1_1PubIntroReceivedEvent.md)** 
    * **struct [PubIntroSentEvent](Classes/structtooling_1_1PubIntroSentEvent.md)** 
    * **struct [RCGossipReceivedEvent](Classes/structtooling_1_1RCGossipReceivedEvent.md)** 
    * **struct [RCGossipSentEvent](Classes/structtooling_1_1RCGossipSentEvent.md)** 
    * **struct [RouterEvent](Classes/structtooling_1_1RouterEvent.md)** 
    * **struct [RouterHive](Classes/structtooling_1_1RouterHive.md)** 
* **namespace [uvw](Namespaces/namespaceuvw.md)** 



-------------------------------

Updated on 2023-01-09 at 19:27:44 +0000
