diff --git a/qr2/challenge.go b/qr2/challenge.go index ad336c5..52940c9 100644 --- a/qr2/challenge.go +++ b/qr2/challenge.go @@ -33,7 +33,12 @@ func sendChallenge(conn net.PacketConn, addr net.UDPAddr, session Session, looku challenge = common.RandomString(6) + "00" + hexIP + hexPort mutex.Lock() - sessions[lookupAddr].Challenge = challenge + if sessionPtr := sessions[lookupAddr]; sessionPtr != nil { + sessionPtr.Challenge = challenge + } else { + mutex.Unlock() + return + } mutex.Unlock() }