From 19a72c0bfbcdb19f1be38c047acf756780a9604d Mon Sep 17 00:00:00 2001 From: stubbsta Date: Mon, 13 May 2024 10:22:18 +0200 Subject: [PATCH] forcing nonce value to wrap around once limit is reached --- waku/waku_api/rest/relay/handlers.nim | 4 ++-- waku/waku_rln_relay/nonce_manager.nim | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/waku/waku_api/rest/relay/handlers.nim b/waku/waku_api/rest/relay/handlers.nim index 3ecc4aeaf3..b91506ca52 100644 --- a/waku/waku_api/rest/relay/handlers.nim +++ b/waku/waku_api/rest/relay/handlers.nim @@ -156,7 +156,7 @@ proc installRelayApiHandlers*( if not node.wakuRlnRelay.isNil(): # append the proof to the message - node.wakuRlnRelay.unsafeAppendRLNProof(message, float64(getTime().toUnix())).isOkOr: + node.wakuRlnRelay.appendRLNProof(message, float64(getTime().toUnix())).isOkOr: return RestApiResponse.internalServerError( "Failed to publish: error appending RLN proof to message: " & $error ) @@ -267,7 +267,7 @@ proc installRelayApiHandlers*( # if RLN is mounted, append the proof to the message if not node.wakuRlnRelay.isNil(): - node.wakuRlnRelay.unsafeAppendRLNProof(message, float64(getTime().toUnix())).isOkOr: + node.wakuRlnRelay.appendRLNProof(message, float64(getTime().toUnix())).isOkOr: return RestApiResponse.internalServerError( "Failed to publish: error appending RLN proof to message: " & $error ) diff --git a/waku/waku_rln_relay/nonce_manager.nim b/waku/waku_rln_relay/nonce_manager.nim index 23991a8f01..e97b6a0ca3 100644 --- a/waku/waku_rln_relay/nonce_manager.nim +++ b/waku/waku_rln_relay/nonce_manager.nim @@ -3,7 +3,7 @@ when (NimMajor, NimMinor) < (1, 4): else: {.push raises: [].} -import chronos, stew/results, times +import chronos, chronicles, stew/results, times import ./constants export chronos, times, results, constants @@ -48,8 +48,9 @@ proc getNonce*(n: NonceManager): NonceManagerResult[Nonce] = n.nextNonce = retNonce + 1 n.lastNonceTime = now - # This is commented out only for testing purposes - # if retNonce >= n.nonceLimit: + # This is modified for testing purposes, once the limit is reached the nonce value is reset to 0 + if retNonce >= n.nonceLimit: + retNonce = 0 # return err( # NonceManagerError( # kind: NonceLimitReached,