Opened 11 years ago

Closed 10 years ago

#406 closed defect (fixed)

UDP NPE in establisher

Reported by: zzz Owned by: zzz
Priority: major Milestone: 0.9
Component: router/transport Version: 0.8.11
Keywords: Cc:
Parent Tickets: Sensitive: no


_still_ not fixed (sigh)


Change History (5)

comment:1 Changed 10 years ago by slow

Milestone: 0.8.6


xxxx AM CRIT [ Establisher] sport.udp.EstablishmentManager: Error in the establisher
     at net.i2p.router.transport.udp.InboundEstablishState.getSentY(
     at net.i2p.router.transport.udp.InboundEstablishState.verifyIdentity(
     at net.i2p.router.transport.udp.InboundEstablishState.getConfirmedIdentity(
     at net.i2p.router.transport.udp.EstablishmentManager.handleInbound(
     at net.i2p.router.transport.udp.EstablishmentManager.doPass(
     at net.i2p.router.transport.udp.EstablishmentManager.access$1000(
     at net.i2p.router.transport.udp.EstablishmentManager$

comment:2 Changed 10 years ago by slow


Same on 0.8.11-0

comment:3 Changed 10 years ago by DISABLED

Hi zzz,

same problem on :

2P version: 0.8.11-0deb1

Java version: Sun Microsystems Inc. 1.6.0_26 (Java™ SE Runtime Environment 1.6.0_26-b03)
Wrapper version: 3.5.12
Platform: Linux amd64 2.6.38-10-generic
Processor: uninitialized (core2)
Jbigi: Locally optimized native BigInteger? library loaded from file
Encoding: UTF-8

12.11.11 17:05:55 CRIT [ Establisher] sport.udp.EstablishmentManager?: Error in the establisher

at net.i2p.router.transport.udp.InboundEstablishState?.getSentY(InboundEstablishState?.java:133)
at net.i2p.router.transport.udp.InboundEstablishState?.verifyIdentity(InboundEstablishState?.java:306)
at net.i2p.router.transport.udp.InboundEstablishState?.getConfirmedIdentity(InboundEstablishState?.java:269)
at net.i2p.router.transport.udp.EstablishmentManager?.handleInbound(EstablishmentManager?.java:860)
at net.i2p.router.transport.udp.EstablishmentManager?.doPass(EstablishmentManager?.java:1069)
at net.i2p.router.transport.udp.EstablishmentManager?.access$1000(EstablishmentManager?.java:36)
at net.i2p.router.transport.udp.EstablishmentManager?$

comment:4 Changed 10 years ago by zzz

Milestone: 0.9

This is not strictly a concurrency bug, but it's a race caused by two packets coming in quickly and being processed in parallel. The second needs to be queued until the first is completely done. The establishment is in-process.

comment:5 Changed 10 years ago by zzz

Resolution: fixed
Status: newclosed

This was fixed as a byproduct of the DHSessionKeyBuilder refactoring in 0.8.13-15. There's a chance that the problem may manifest itself in a different way, but for now I'm optimistically declaring victory.

Note: See TracTickets for help on using tickets.