From e53a59b4ac11c41ce803ff04cf3e6654a2bcff1d Mon Sep 17 00:00:00 2001
From: zzz <zzz@i2pmail.org>
Date: Mon, 28 Feb 2022 13:36:19 -0500
Subject: [PATCH] SSU2: fix PS2 packet numbering

---
 .../java/src/net/i2p/router/transport/udp/PeerState2.java   | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/router/java/src/net/i2p/router/transport/udp/PeerState2.java b/router/java/src/net/i2p/router/transport/udp/PeerState2.java
index f9c1e5d095..693e8cb7f3 100644
--- a/router/java/src/net/i2p/router/transport/udp/PeerState2.java
+++ b/router/java/src/net/i2p/router/transport/udp/PeerState2.java
@@ -136,7 +136,11 @@ public class PeerState2 extends PeerState implements SSU2Payload.PayloadCallback
 
     // SSU 2 things
 
-    long getNextPacketNumber() { return _packetNumber.incrementAndGet(); }
+    /**
+     * Next outbound packet number,
+     * starts at 1 for Alice (0 is Session Confirmed) and 0 for Bob
+     */
+    long getNextPacketNumber() { return _packetNumber.getAndIncrement(); }
     long getSendConnID() { return _sendConnID; }
     long getRcvConnID() { return _rcvConnID; }
     /** caller must sync on returned object when encrypting */
-- 
GitLab