libp2p/builders

Search:
Group by:
Source   Edit  

This module contains a Switch Building helper.

Types

RelayReservationHandler = proc (addresses: seq[MultiAddress]) {....gcsafe,
    raises: [].}
Source   Edit  
SecureProtocol {.pure.} = enum
  Noise
Source   Edit  
SwitchBuilder = ref object
Source   Edit  
TransportBuilder = proc (config: TransportConfig): Transport {....gcsafe,
    raises: [].}
Source   Edit  
TransportConfig = ref object
  upgr*: Upgrade
  privateKey*: PrivateKey
  autotls*: Opt[AutotlsService]
  connManager*: ConnManager
  rng*: Rng
Source   Edit  

Consts

MemoryAutoAddress = "/memorytransport/*"
Source   Edit  

Procs

proc build(b: SwitchBuilder): Switch {....raises: [LPError], raises: [],
                                       tags: [RootEffect, WriteIOEffect],
                                       forbids: [].}
Source   Edit  
proc new(T: type[SwitchBuilder]): T:type {....raises: [].}
Creates a SwitchBuilder Source   Edit  
proc withAddress(b: SwitchBuilder; address: MultiAddress): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Set the listening address of the switch Source   Edit  
proc withAddress(b: SwitchBuilder; address: MultiAddress;
                 enableWildcardResolver: bool): SwitchBuilder {.
    ...deprecated: "use withWildcardResolver()", raises: [], tags: [], forbids: [].}
Deprecated: use withWildcardResolver()
Set the listening address of the switch Source   Edit  
proc withAddressConfidenceTtls(b: SwitchBuilder; ttls: AddressConfidenceTtls): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Override the per-confidence TTLs used to expire peer addresses. Source   Edit  
proc withAddresses(b: SwitchBuilder; addresses: seq[MultiAddress]): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Set the listening addresses of the switch Source   Edit  
proc withAddresses(b: SwitchBuilder; addresses: seq[MultiAddress];
                   enableWildcardResolver: bool): SwitchBuilder {.
    ...deprecated: "use withWildcardResolver()", raises: [], tags: [], forbids: [].}
Deprecated: use withWildcardResolver()
Set the listening addresses of the switch Source   Edit  
proc withAddressPolicy(b: SwitchBuilder; addressPolicy: PeerAddressPolicy): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Applies a single address visibility policy across local address announcements and all discovery/storage paths configured by the builder. Source   Edit  
proc withAgentVersion(b: SwitchBuilder; agentVersion: string): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withAnnouncedAddress(b: SwitchBuilder; address: MultiAddress): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Set a single announced address. See withAnnouncedAddresses. Source   Edit  
proc withAnnouncedAddresses(b: SwitchBuilder; addresses: seq[MultiAddress]): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Set explicit addresses to advertise to peers, distinct from the switch's listening addresses. When non-empty, these replace the output of the address mapper chain (the addressPolicy filter is still applied). Use this to announce a public NAT-mapped address while binding locally. Source   Edit  
proc withAutonat(b: SwitchBuilder; enabled: bool = true): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withAutonatV2(b: SwitchBuilder; serviceConfig: AutonatV2ServiceConfig = AutonatV2ServiceConfig.new()): SwitchBuilder {....deprecated: "use withNAT(autonatConfig(AutonatV2, v2ServiceConfig = Opt.some(serviceConfig)))",
    raises: [], tags: [], forbids: [].}
Deprecated: use withNAT(autonatConfig(AutonatV2, v2ServiceConfig = Opt.some(serviceConfig)))
Source   Edit  
proc withAutonatV2Server(b: SwitchBuilder;
                         config: AutonatV2Config = AutonatV2Config.new()): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withAutotls(b: SwitchBuilder; config: AutotlsConfig = AutotlsConfig.new()): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withCircuitRelay(b: SwitchBuilder; r: Relay = Relay.new()): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withConnectionLimits(b: SwitchBuilder; limits: ConnectionLimits): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Set the connection limits for the switch. Construct limits via ConnectionLimits.maxTotal for a shared cap or ConnectionLimits.maxInOut for independent per-direction caps. Source   Edit  
proc withHolePunching(b: SwitchBuilder; maxNumRelays: int;
                      onReservationHandler: RelayReservationHandler): SwitchBuilder {....deprecated: "use withNAT(holePunchingConfig(maxNumRelays, onReservationHandler))",
    raises: [], tags: [], forbids: [].}
Deprecated: use withNAT(holePunchingConfig(maxNumRelays, onReservationHandler))
Source   Edit  
proc withIdentifyPusher(b: SwitchBuilder; enabled: bool = true): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
When enabled, the IdentifyPush protocol is mounted on the switch and an IdentifyPusher service tracks which connected peers advertise IdentifyPush, broadcasting our updated PeerInfo to all tracked peers whenever it changes. Source   Edit  
proc withKademlia(b: SwitchBuilder;
                  bootstrapNodes: seq[(PeerId, seq[MultiAddress])] = @[];
                  config: KadDHTConfig = KadDHTConfig.new()): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withMaxConnections(b: SwitchBuilder; maxConnections: int): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Maximum concurrent connections of the switch. You should either use this, or withMaxInOut. Source   Edit  
proc withMaxConnsPerPeer(b: SwitchBuilder; maxConnsPerPeer: int): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withMaxInOut(b: SwitchBuilder; maxIn: int; maxOut: int): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Maximum concurrent incoming and outgoing connections. Source   Edit  
proc withMemoryTransport(b: SwitchBuilder): SwitchBuilder {....raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc withMplex(b: SwitchBuilder; inTimeout = 5.minutes; outTimeout = 5.minutes;
               maxChannCount = 200): SwitchBuilder {....raises: [], tags: [],
    forbids: [].}
Uses Mplex as a multiplexer Timeout is the duration after which a inactive connection will be closed Source   Edit  
proc withNameResolver(b: SwitchBuilder; nameResolver: NameResolver): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withNAT(b: SwitchBuilder; config: NATConfig;
             portMapperFactory: PortMapperFactory = nil): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Build config with the *Config helpers; call once per distinct concern, setting the same concern twice is a programmer error. Source   Edit  
proc withNoise(b: SwitchBuilder): SwitchBuilder {....raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc withObservedAddrManager(b: SwitchBuilder;
                             observedAddrManager: ObservedAddrManager): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withPeerScoring(b: SwitchBuilder; scoring: PeerScoring = PeerScoring()): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Configure peer scoring parameters. Source   Edit  
proc withPeerStore(b: SwitchBuilder; capacity: int): SwitchBuilder {....raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc withPrivateAddressFilter(b: SwitchBuilder): SwitchBuilder {....raises: [],
    tags: [], forbids: [].}
Filter private (RFC1918/link-local) addresses from all peer address announcements and incoming peer address records. When enabled:
  • Our node will not announce private addresses to the network
  • Private addresses received from other peers are discarded

Circuit relay and DNS addresses are never filtered.

Source   Edit  
proc withPrivateKey(b: SwitchBuilder; privateKey: PrivateKey | Opt[PrivateKey]): SwitchBuilder {.
    ...raises: [].}
Set the private key of the switch. Will be used to generate a PeerId Source   Edit  
proc withProtoVersion(b: SwitchBuilder; protoVersion: string): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withQuicTransport(b: SwitchBuilder): SwitchBuilder {....raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc withRendezVous(b: SwitchBuilder;
                    config: RendezVousConfig = RendezVousConfig.new()): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withRng(b: SwitchBuilder; rng: Rng): SwitchBuilder {....raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc withSignedPeerRecord(b: SwitchBuilder; sendIt = true): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withTcpTransport(b: SwitchBuilder; flags: set[ServerFlags] = {}): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withTransport(b: SwitchBuilder; prov: TransportBuilder): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Use a custom transport Source   Edit  
proc withWatermarkPolicy(b: SwitchBuilder; lowWater: int; highWater: int;
                         gracePeriod: Duration = 0.minutes;
                         silencePeriod: Duration = 10.seconds): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Enable hi/lo watermark connection management. When connected peers exceed highWater, the connection manager trims down to lowWater, skipping peers within gracePeriod and protected peers. Can be combined with withMaxConnections/withMaxInOut to apply both a hard semaphore cap and active trimming simultaneously. Source   Edit  
proc withWildcardResolver(b: SwitchBuilder; enabled: bool = true): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withWsTransport(b: SwitchBuilder; tlsPrivateKey: TLSPrivateKey = nil;
                     tlsCertificate: TLSCertificate = nil;
                     tlsFlags: set[TLSFlags] = {}; flags: set[ServerFlags] = {}): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc withYamux(b: SwitchBuilder; maxChannCount: int = MaxChannelCount;
               windowSize: int = YamuxDefaultWindowSize;
               inTimeout: Duration = 5.minutes; outTimeout: Duration = 5.minutes): SwitchBuilder {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  

Exports

DNS_OR_IP, LPStreamError, AlreadyExpectingConnectionError, shortLog, init, resetImpl, new, UDP_DNS, MaError, libp2p_network_bytes, markConnected, writeField, ephemeral, close, dial, decode, replaceIp, unprotect, MaPatternOp, bumpDecayingTag, WS_DNS, initVBuffer, <=, MaxSizeError, ==, DialFailedError, addTransport, set, removeDecayingTag, LPError, handler, shortLog, filterIt, protect, ECDHEScheme, shortLog, supportsPacked, writeField, init, contains, closed, addConnEventHandler, WatermarkPolicy, [], new, macOpenArray, random, init, new, del, Secret, peekVarint, markPeerConnected, random, handshake, maxConnections, $, validate, mapOr, hash, identify, chroniclesFormatItIMPL, key, secure, Memory, bytes, UpgradeFailedError, publicRoutableAddressPolicy, getPubKey, IdentityInvalidMsgError, maxInlineKeyLength, addHandler, TranscoderDNS, QUIC, $, writeField, init, ephemeral, withValue, mac, init, dial, PeerInfoObserver, getIp, removeConnEventHandler, getWrapped, getBytes, MAKind, addPeerEventHandler, new, init, noPrivateAddressPolicy, codec, getRepeatedField, generate, matchPartial, addObservation, stop, ServiceSetupError, releaseOutgoing, libp2p_pki_schemes, len, push, getBytes, peerScore, areAddrsConsistent, trackConnection, ==, init, readLp, HTTP, initVBuffer, atEof, finish, PeerEventKind, getOutgoingSlot, supportsPacked, Service, peekSeq, update, TCP_IP4, toOpt, join, fullAddrs, payloadType, concat, init, IP, protoAddress, QUIC_V1_IP, decode, newRng, ==, shortLog, withValue, start, mount, SecureConn, checkValid, handle, getPublicKey, chroniclesFormatItIMPL, libp2p_multiaddress_exts, WebSockets, getPart, libp2p_failed_upgrades_incoming, releaseIncoming, secure, dial, extractPublicKey, mapAnd, new, maErr, LastSeenOutboundBook, verify, UDP_IP, new, newLPStreamEOFError, selectMuxer, connCount, resetImpl, DNSADDR, handler, AddressMapper, IdentifyPushHandler, init, write, shortLog, ConnManager, PeerId, EnvelopeError, WSS, UpgradeTimeout, QUIC_V1, TCP_IP, close, selectMuxer, startAddressPruning, add, init, closeImpl, toCidString, toBytes, dial, pruneExpired, TCP_DNS, closeWrite, shortLog, wasResetLocally, encode, UDP_IP4, len, capLen, untagPeer, protoName, protoArgument, PeerEventHandler, LPProtoHandler, Secure, toRawBytes, supportsPacked, MaPattern, IdentifyPush, getStream, TranscoderIP6Zone, $, TCP_IP6, len, DNS, WSS_DNS, list, match, <, addConnEventHandler, CryptoResult, parseFullAddress, defaultAddressPolicy, init, WebRTCDirect, PeerAddressPolicy, AgentBook, init, upgrade, $, UDP, Dialer, disconnect, TranscoderOnion, Dial, StreamTracker, waitForPeerReady, write, init, updatePeerInfo, LPStreamResetError, writeArray, new, LPStreamIncompleteError, connectedPeers, >, LPStreamEOFError, dialAndUpgrade, IP6, shortLog, release, items, reserveOutgoing, initVBuffer, DecayFn, ==, PKScheme, new, toString, payload, triggerConnEvent, triggerPeerEvents, init, connect, stretchKeys, accepts, addObserver, readFieldInto, init, negotiateStream, generate, TCP, PrivateKey, dropPeer, chroniclesExpandItIMPL, del, start, init, &=, PeerInfoError, canOpenOutgoing, newBearSslRng, computeFieldSize, maxInOut, newLPStreamClosedError, random, write, entries, TranscoderMemory, close, trackMuxer, markPeerDisconnected, TranscoderIP4, init, $, toException, removeConnEventHandler, init, init, Upgrade, ProtoVersionBook, goffset, HandlerHolder, getRawBytes, pick, SecureConnTrackerName, KeyPair, PeerStore, init, PeerScoring, high, SPRBook, cmp, DNSANY, DefaultConnectionTimeout, Delta, initStream, QUIC_DNS, dial, Signature, chroniclesFormatItIMPL, contains, codec=, computeFieldSize, tagPeerDecaying, computeFieldSize, removeObserver, readFieldInto, supportsPacked, stripPeerId, getStream, DigestSheme, init, IPFS, getField, shortLog, readOnce, dial, take, removePeerEventHandler, AddressConfidence, CircuitRelay, random, AddressEntry, isEmpty, ConnEventKind, readFieldInto, chroniclesFormatItIMPL, getWrapped, connect, contains, hex, getMostObservedProtosAndPorts, UpgradeError, protocols, chroniclesFormatItIMPL, HTTPS, UNIX, exclIfIt, encode, computeFieldSize, TooManyConnectionsError, supportsPacked, addTransport, write, TLS_WS, TranscoderIP6, init, readSeq, addHandler, storeMuxer, getProtocolArgument, identify, PeerEvent, data, PublicKey, supported, MaResult, supportsPacked, connect, PeerBookChangeHandler, getStream, []=, QUIC_V1_IP4, writeSeq, ConnEvent, init, isExpired, &, $, DNS6, expandAddrs, writeField, contains, [], decode, IpTransportProtocol, guessDialableAddr, init, [], IP4, TranscoderPort, chroniclesExpandItIMPL, readMessage, addPeerEventHandler, init, >=, expectConnection, init, payloadDomain, start, withValue, handle, MuxedStream, canAcceptIncoming, dial, init, LPStreamLimitError, TranscoderOnion3, ConnectionLimits, SignedPayload, [], closeImpl, toBytes, decayFixed, newLPStreamLimitError, readFieldInto, keyOpenArray, random, tagPeer, match, ConcurrentUpgrades, WebSockets_DNS, SignedPeerRecord, $, closeImpl, dial, isEmpty, writeLp, decode, connectedPeers, reset, AddressConfidenceTtls, new, connect, init, newLPStreamIncompleteError, generateBytes, MAProtocol, newLPStreamResetError, shortLog, initStream, contains, readFieldInto, init, DNS4, maxTotal, MultiAddress, readFieldInto, WS_IP, selectBest, encode, supportsPacked, write, P2PPattern, Connection, Envelope, connect, hasPublicKey, AddressBook, toException, init, Stream, isEnough, getConnections, Reliable, addrs, hex, [], write, ivOpenArray, WS, AgentVersion, init, MultiStreamError, MultistreamSelect, encode, LPProtocol, init, Matcher, match, TcpOnion3, readArray, filterAddrs, <, iv, RawConn, reserveIncoming, new, RsaDefaultKeySize, readLine, Eof, CryptoError, chroniclesFormatItIMPL, writeLPVarint, append, guessDialableAddr, IdentifyPushCodec, parseFullAddress, WSS_IP, LPStreamConnDownError, peekArray, PeerRecord, init, SupportedSchemes, select, generate, computeFieldSize, Unreliable, SupportedSchemesInt, random, checkFutures, isProtected, handler=, ConnectionSlot, toFullAddress, shuffle, init, checkAddresses, validate, addTransport, ProtoVersion, protoCode, mapEq, init, removePeerEventHandler, Onion3, stop, readOnce, select, pickOne, TranscoderP2P, PeerInfo, AddressInfo, decayNone, ConnectionTrackerName, KeyBook, sign, extend, init, write, notifyObservers, LPStream, verify, IdentifyInfo, IdentifyError, addHandler, Identify, encode, len, newLPStreamRemoteClosedError, MaPatResult, isConnected, Direction, IdentifyCodec, QUIC_V1_DNS, InvalidVarintError, Switch, shortLog, writeField, cleanup, init, IdentifyNoPubKeyError, getBytes, write, hash, init, UTP, toBytes, readVarint, hash, [], TimeoutHandler, toCid, getMostObservedProtosAndPorts, init, Rng, ObservedAddrManager, ConnEventHandler, lookupProtocol, WebSockets_IP, VBuffer, writeLp, decayLinear, start, IdentityNoMatchError, writePBVarint, toChunks, readExactly, protoArgument, ProtoBook, decode, setup, newLPStreamConnDownError, new, init, write, QUIC_IP, initStream, getField, supportsPacked, readVarint, toOpt, connect, closeWithEOF, LPStreamTrackerName, orError, LPStreamRemoteClosedError, availableSlots, libp2p_failed_upgrades_outgoing, stop, MaInvalidAddress, select, PeerBook, generate, extend, LPStreamClosedError, getIncomingSlot, writeField, getBytes, toBytes, getOrder, computeFieldSize, [], []=, TranscoderUnix, LastSeenBook, SeqPeerBook, toOpt, tryDial, stop, writeVarint, dialAndUpgrade, hash, shortLog, init, random, supportsPacked, $, write, PeerId, ==, getField, <=, toCidString, shortLog, computeFieldSize, shortLog, capLen, init, validate, init, supportsPacked, exclIfIt, match, <, chroniclesFormatItIMPL, write, getPubKey, maxInlineKeyLength, readFieldInto, withValue, writeField, >=, withValue, computeFieldSize, shortLog, writeField, toBytes, filterIt, match, readFieldInto, toChunks, toCid, getBytes, init, init, take, toOpt, toOpt, init, withValue, hasPublicKey, chroniclesFormatItIMPL, random, >, hex, len, toOpt, cmp, extractPublicKey, shortLog, UDP_DNS, writeField, ephemeral, init, replaceIp, MaPatternOp, <=, filterIt, supportsPacked, init, $, validate, chroniclesFormatItIMPL, init, Memory, getPubKey, TLS_WS, TranscoderDNS, writeField, init, ephemeral, PeerInfoObserver, getIp, generateBytes, MAKind, init, getRepeatedField, generate, getBytes, WebSockets, &, peekSeq, TCP_IP4, fullAddrs, init, QUIC_V1_IP, ==, withValue, getPublicKey, libp2p_multiaddress_exts, readFieldInto, getPart, DNSANY, DNSADDR, AddressMapper, WSS, init, toCidString, toBytes, TCP_DNS, shortLog, encode, UDP_IP4, len, supported, init, ==, supportsPacked, TranscoderIP6Zone, $, WSS_DNS, <, PeerAddressPolicy, $, PeerInfo, TranscoderOnion, write, key, Rng, writeArray, PeerId, IP6, shortLog, writeField, payload, stretchKeys, addObserver, generate, TCP, PrivateKey, getBytes, init, &=, newBearSslRng, TranscoderMemory, init, $, getRawBytes, KeyPair, computeFieldSize, chroniclesFormatItIMPL, hash, stripPeerId, shortLog, isEmpty, readFieldInto, data, HTTPS, QUIC_DNS, supportsPacked, TranscoderIP6, encode, getProtocolArgument, MaResult, finish, DNS6, expandAddrs, writeField, [], IpTransportProtocol, TranscoderPort, >=, payloadDomain, init, TranscoderOnion3, protoArgument, keyOpenArray, match, WebSockets_DNS, isEmpty, readFieldInto, QUIC_V1_DNS, getField, selectBest, Envelope, init, init, Reliable, addrs, init, match, filterAddrs, CryptoError, append, init, parseFullAddress, generate, checkFutures, supportsPacked, shuffle, checkAddresses, validate, protoCode, pickOne, TranscoderP2P, sign, new, getBytes, encode, len, shortLog, writeField, getBytes, init, computeFieldSize, QUIC_IP, toChunks, protoArgument, getField, readVarint, orError, MaInvalidAddress, getOrder, hash, TranscoderUnix, SignedPeerRecord, writeVarint, DNS_OR_IP, init, random, MaError, decode, matchPartial, WS_DNS, initVBuffer, ==, ECDHEScheme, items, init, [], decode, decode, random, Secret, peekVarint, random, mapOr, bytes, publicRoutableAddressPolicy, maxInlineKeyLength, QUIC, withValue, mac, WS_IP, noPrivateAddressPolicy, libp2p_pki_schemes, areAddrsConsistent, init, readFieldInto, HTTP, initVBuffer, TcpOnion3, write, update, toOpt, payloadType, $, IP, protoAddress, decode, newRng, shortLog, checkValid, chroniclesFormatItIMPL, len, CircuitRelay, extractPublicKey, mapAnd, maErr, UDP_IP, init, ==, write, notifyObservers, QUIC_V1, TCP_IP, readSeq, capLen, protoName, toRawBytes, MaPattern, writeField, TCP_IP6, toException, init, match, writeLPVarint, CryptoResult, parseFullAddress, WebRTCDirect, init, UDP, init, >, initVBuffer, PKScheme, random, accepts, take, write, PeerInfoError, random, TranscoderIP4, toException, DNS, goffset, pick, init, high, toString, init, cmp, init, verify, Signature, exclIfIt, computeFieldSize, removeObserver, supportsPacked, toBytes, DigestSheme, init, IPFS, MultiAddress, shortLog, hex, protocols, UNIX, computeFieldSize, LPError, init, supportsPacked, toBytes, QUIC_V1_IP4, writeSeq, init, VBuffer, init, [], IP4, init, supportsPacked, withValue, readFieldInto, SignedPayload, toBytes, $, MAProtocol, contains, DNS4, readFieldInto, readArray, P2PPattern, hasPublicKey, isEnough, hex, toOpt, WS, init, encode, init, init, <, iv, WSS_IP, peekArray, PeerRecord, SupportedSchemes, computeFieldSize, Unreliable, SupportedSchemesInt, random, macOpenArray, mapEq, Onion3, toFullAddress, concat, AddressInfo, write, EnvelopeError, computeFieldSize, MaPatResult, init, defaultAddressPolicy, write, UTP, verify, toCid, PublicKey, WebSockets_IP, writePBVarint, init, supportsPacked, ivOpenArray, RsaDefaultKeySize, generate, write, toOpt, PeerAddressPolicy, publicRoutableAddressPolicy, filterAddrs, defaultAddressPolicy, accepts, noPrivateAddressPolicy, DNS_OR_IP, shortLog, init, random, UDP_DNS, $, MaError, libp2p_network_bytes, writeField, ephemeral, replaceIp, MaPatternOp, ==, WS_DNS, initVBuffer, <=, MaxSizeError, decode, ==, shortLog, filterIt, ECDHEScheme, shortLog, hash, supportsPacked, writeField, init, closed, [], shuffle, random, init, Secret, peekVarint, payload, $, validate, mapOr, chroniclesFormatItIMPL, init, Memory, bytes, publicRoutableAddressPolicy, getPubKey, maxInlineKeyLength, TranscoderDNS, QUIC, writeField, [], init, ephemeral, withValue, PeerInfoObserver, getIp, generateBytes, WS_IP, write, MAKind, decode, getBytes, write, decode, init, noPrivateAddressPolicy, getRepeatedField, generate, matchPartial, getBytes, len, areAddrsConsistent, init, readLp, HTTP, initVBuffer, atEof, LPStreamTrackerName, removeObserver, peekSeq, update, TCP_IP4, toOpt, join, fullAddrs, payloadType, LPStreamError, init, IP, protoAddress, QUIC_V1_IP, newRng, ==, shortLog, withValue, checkValid, getPublicKey, chroniclesFormatItIMPL, libp2p_multiaddress_exts, WebSockets, readFieldInto, getPart, CircuitRelay, extractPublicKey, mapAnd, new, maErr, computeFieldSize, UDP_IP, newLPStreamEOFError, init, random, ==, DNSADDR, AddressMapper, write, notifyObservers, WSS, QUIC_V1, TCP_IP, close, init, closeImpl, toCidString, readSeq, toBytes, TCP_DNS, closeWrite, shortLog, wasResetLocally, encode, UDP_IP4, len, capLen, init, protoName, protoArgument, toRawBytes, supportsPacked, $, writeField, TCP_IP6, init, DNS, WSS_DNS, match, writeLPVarint, CryptoResult, LPStream, parseFullAddress, WebRTCDirect, PeerAddressPolicy, init, $, UDP, PeerInfo, TranscoderOnion, StreamTracker, defaultAddressPolicy, init, LPStreamResetError, writeArray, LPStreamIncompleteError, PeerId, >, [], LPStreamEOFError, IP6, shortLog, reset, initVBuffer, PKScheme, random, stretchKeys, accepts, addObserver, Connection, write, init, generate, TCP, PrivateKey, readFieldInto, write, init, RawConn, &=, PeerInfoError, newBearSslRng, verify, newLPStreamClosedError, random, TranscoderMemory, toString, TranscoderIP4, init, toException, init, goffset, getRawBytes, pick, KeyPair, init, high, cmp, init, DefaultConnectionTimeout, Signature, chroniclesFormatItIMPL, contains, hash, exclIfIt, computeFieldSize, computeFieldSize, supportsPacked, stripPeerId, toBytes, DigestSheme, IPFS, getField, shortLog, readOnce, init, resetImpl, isEmpty, shortLog, data, chroniclesFormatItIMPL, hex, protocols, chroniclesFormatItIMPL, computeFieldSize, HTTPS, UNIX, LPError, supportsPacked, readFieldInto, TLS_WS, sign, encode, Rng, getProtocolArgument, supported, MaResult, init, supportsPacked, toBytes, QUIC_V1_IP4, writeSeq, finish, &, DNS6, expandAddrs, writeField, decode, IpTransportProtocol, key, IP4, TranscoderPort, getBytes, readFieldInto, DNSANY, >=, QUIC_V1_DNS, payloadDomain, $, MaPattern, withValue, MuxedStream, init, LPStreamLimitError, TranscoderOnion3, SignedPayload, mac, toBytes, protoArgument, newLPStreamLimitError, keyOpenArray, match, WebSockets_DNS, SignedPeerRecord, $, isEmpty, writeLp, toCid, init, newLPStreamIncompleteError, MAProtocol, newLPStreamResetError, initStream, init, getField, DNS4, readFieldInto, getWrapped, selectBest, supportsPacked, P2PPattern, Envelope, hasPublicKey, toException, init, Stream, isEnough, Reliable, addrs, hex, closeImpl, getBytes, ivOpenArray, WS, init, encode, take, init, init, match, readArray, filterAddrs, <, iv, readLine, Eof, CryptoError, computeFieldSize, append, hash, init, parseFullAddress, WSS_IP, LPStreamConnDownError, peekArray, PeerRecord, SupportedSchemes, generate, QUIC_DNS, Unreliable, SupportedSchemesInt, random, checkFutures, supportsPacked, macOpenArray, init, checkAddresses, validate, protoCode, mapEq, libp2p_pki_schemes, Onion3, TcpOnion3, toFullAddress, pickOne, concat, TranscoderP2P, AddressInfo, ConnectionTrackerName, TranscoderIP6, new, write, EnvelopeError, computeFieldSize, encode, len, newLPStreamRemoteClosedError, TranscoderIP6Zone, MaPatResult, Direction, init, InvalidVarintError, shortLog, items, init, write, write, init, UTP, readVarint, verify, readFieldInto, TimeoutHandler, QUIC_IP, init, PublicKey, WebSockets_IP, VBuffer, writeLp, writePBVarint, toChunks, readExactly, newLPStreamConnDownError, init, initStream, MultiAddress, supportsPacked, readVarint, toOpt, closeWithEOF, RsaDefaultKeySize, orError, LPStreamRemoteClosedError, <, MaInvalidAddress, generate, LPStreamClosedError, writeField, write, getOrder, TranscoderUnix, toOpt, writeVarint, DNS_OR_IP, contains, exclIfIt, hash, shortLog, readSeq, UDP_DNS, MaError, IPFS, writeField, data, MaPatternOp, isEmpty, WS_DNS, initVBuffer, hex, protocols, bytes, ==, HTTPS, UNIX, filterIt, QUIC_DNS, shortLog, LPError, TranscoderIP6, encode, getProtocolArgument, MaResult, init, supportsPacked, peekVarint, mapOr, QUIC_V1_IP4, writeSeq, &, Memory, DNS6, TLS_WS, TranscoderDNS, QUIC, [], [], IP4, TranscoderPort, withValue, getIp, $, WS_IP, withValue, MAKind, TranscoderOnion3, getRepeatedField, matchPartial, IpTransportProtocol, match, WebSockets_DNS, WebSockets, $, areAddrsConsistent, isEmpty, HTTP, finish, init, TcpOnion3, MAProtocol, peekSeq, TCP_IP4, toOpt, concat, init, IP, protoAddress, DNS4, QUIC_V1_IP, readArray, withValue, P2PPattern, isEnough, libp2p_multiaddress_exts, Reliable, len, WS, getPart, CircuitRelay, mapAnd, maErr, <, UDP_IP, DNSANY, DNSADDR, append, write, WSS_IP, peekArray, WSS, QUIC_V1, TCP_IP, getField, Unreliable, checkFutures, TCP_DNS, UDP_IP4, capLen, init, protoName, protoArgument, validate, mapEq, Onion3, MaPattern, MaInvalidAddress, TCP_IP6, TranscoderP2P, toException, WSS_DNS, writeLPVarint, write, WebRTCDirect, len, UDP, TranscoderIP6Zone, MaPatResult, TranscoderOnion, QUIC_V1_DNS, readFieldInto, init, shortLog, writeArray, readFieldInto, init, UTP, [], computeFieldSize, IP6, writeField, initVBuffer, QUIC_IP, initVBuffer, WebSockets_IP, VBuffer, writePBVarint, toChunks, TCP, protoArgument, replaceIp, init, take, MultiAddress, supportsPacked, &=, readVarint, toOpt, TranscoderMemory, TranscoderIP4, init, protoCode, $, toException, DNS, items, computeFieldSize, TranscoderUnix, high, toOpt, toString, writeVarint, computeFieldSize, Signature, exclIfIt, shortLog, init, supportsPacked, toBytes, DigestSheme, ephemeral, ECDHEScheme, init, filterIt, shortLog, init, sign, Rng, macOpenArray, PublicKey, Secret, supportsPacked, $, mac, init, selectBest, init, ephemeral, withValue, readFieldInto, init, stretchKeys, generateBytes, withValue, readFieldInto, write, init, init, init, generate, toBytes, write, random, getBytes, toOpt, init, newRng, supportsPacked, withValue, getPublicKey, init, init, random, write, ivOpenArray, init, iv, init, CryptoError, ==, key, SupportedSchemes, generate, RsaDefaultKeySize, init, keyOpenArray, SupportedSchemesInt, toBytes, capLen, shuffle, supported, ==, toRawBytes, libp2p_pki_schemes, random, pickOne, init, random, CryptoResult, shortLog, writeField, getBytes, verify, writeField, PKScheme, getBytes, init, toChunks, generate, PrivateKey, take, supportsPacked, toOpt, newBearSslRng, orError, $, generate, goffset, getRawBytes, pick, getOrder, computeFieldSize, KeyPair, init, toOpt, init, toException, toException, checkFutures, LPError, ConnectionLimits, maxTotal, maxInOut, NATConfig, PortMappingMode, AutonatVersion, PortMapperFactory, NATService, upnpConfig, natPmpConfig, explicitIpConfig, autonatConfig, holePunchingConfig, AutonatV2ServiceConfig, AutonatV2Service, natService