From ea7d6c8b3adb44c847c44f9d85d3a23f7e8ca081 Mon Sep 17 00:00:00 2001 From: Ludovic Chenut Date: Thu, 3 Oct 2024 12:00:58 +0200 Subject: [PATCH] fix: limit --- libp2p/protocols/rendezvous.nim | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/libp2p/protocols/rendezvous.nim b/libp2p/protocols/rendezvous.nim index 35c7d8712..35f141672 100644 --- a/libp2p/protocols/rendezvous.nim +++ b/libp2p/protocols/rendezvous.nim @@ -558,7 +558,7 @@ proc requestLocally*(rdv: RendezVous, ns: string): seq[PeerRecord] = @[] proc request*( - rdv: RendezVous, ns: string, limit: int = DiscoverLimit.int, peers: seq[PeerId] + rdv: RendezVous, ns: string, limit: uint64 = DiscoverLimit, peers: seq[PeerId] ): Future[seq[PeerRecord]] {.async.} = ## This async procedure discovers and returns peers for a given namespace ## by sending requests and processing responses. It limits the number of @@ -566,14 +566,12 @@ proc request*( ## var s: Table[PeerId, (PeerRecord, Register)] - limit: uint64 d = Discover(ns: ns) - if limit <= 0 or limit > DiscoverLimit.int: + if limit > DiscoverLimit.int: raise newException(RendezVousError, "Invalid limit") if ns.len notin 0 .. 255: raise newException(RendezVousError, "Invalid namespace") - limit = limit.uint64 proc requestPeer(peer: PeerId) {.async.} = let conn = await rdv.switch.dial(peer, RendezVousCodec) defer: @@ -641,7 +639,7 @@ proc request*( return toSeq(s.values()).mapIt(it[0]) proc request*( - rdv: RendezVous, ns: string, limit: int = DiscoverLimit.int + rdv: RendezVous, ns: string, limit: uint64 = DiscoverLimit ): Future[seq[PeerRecord]] {.async.} = await rdv.request(ns, limit, rdv.peers)