From 29c827c07660fbe9d02d5ab2327cdeaeb7107a59 Mon Sep 17 00:00:00 2001 From: zzz <zzz@i2pmail.org> Date: Thu, 9 Jun 2022 11:54:52 -0400 Subject: [PATCH] SSU2: Ignore dup session confirmed --- .../router/transport/udp/OutboundEstablishState2.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState2.java b/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState2.java index 5fd567c537..b659d6c7e1 100644 --- a/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState2.java +++ b/router/java/src/net/i2p/router/transport/udp/OutboundEstablishState2.java @@ -357,12 +357,15 @@ class OutboundEstablishState2 extends OutboundEstablishState implements SSU2Payl } public synchronized void receiveSessionCreated(UDPPacket packet) throws GeneralSecurityException { - ////// todo fix state check - if (_currentState == OutboundState.OB_STATE_VALIDATION_FAILED) { + if (_currentState != OutboundState.OB_STATE_REQUEST_SENT && + _currentState != OutboundState.OB_STATE_REQUEST_SENT_NEW_TOKEN) { + // ignore dups if (_log.shouldLog(Log.WARN)) - _log.warn("Session created already failed"); + _log.warn("Invalid state for session created: " + this); return; } + if (_log.shouldDebug()) + _log.debug("Received a session created on " + this); DatagramPacket pkt = packet.getPacket(); SocketAddress from = pkt.getSocketAddress(); -- GitLab