queue undecryptable packets for later decryption & possibly send PRST

fixes #38, fixes #69, fixes #73
This commit is contained in:
Lucas Clemente
2016-05-12 15:59:55 +02:00
parent 0df44e46e5
commit c7126137d1
7 changed files with 87 additions and 40 deletions

View File

@@ -14,7 +14,7 @@ import (
// PacketHandler handles packets
type PacketHandler interface {
HandlePacket(addr interface{}, publicHeader *PublicHeader, r *bytes.Reader)
HandlePacket(addr interface{}, publicHeader *PublicHeader, data []byte)
Run()
}
@@ -137,7 +137,7 @@ func (s *Server) handlePacket(conn *net.UDPConn, remoteAddr *net.UDPAddr, packet
// Late packet for closed session
return nil
}
session.HandlePacket(remoteAddr, publicHeader, r)
session.HandlePacket(remoteAddr, publicHeader, packet[len(packet)-r.Len():])
return nil
}