From 248bec97f9bccdfd2b48834fc8711561bbb06018 Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Fri, 16 Jun 2017 11:09:52 +0200 Subject: [PATCH 1/3] log connection ID for sent packets --- session.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/session.go b/session.go index bc9534fda..cfc32393a 100644 --- a/session.go +++ b/session.go @@ -690,7 +690,7 @@ func (s *session) logPacket(packet *packedPacket) { return } if utils.Debug() { - utils.Debugf("-> Sending packet 0x%x (%d bytes), %s", packet.number, len(packet.raw), packet.encryptionLevel) + utils.Debugf("-> Sending packet 0x%x (%d bytes) for connection %x, %s", packet.number, len(packet.raw), s.connectionID, packet.encryptionLevel) for _, frame := range packet.frames { frames.LogFrame(frame, true) } From 2a2375f787d70ff094a5ef42bfc5e9720fc719c0 Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Fri, 16 Jun 2017 11:11:43 +0200 Subject: [PATCH 2/3] log undecrytable packets after the handshake --- session.go | 1 + session_test.go | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/session.go b/session.go index cfc32393a..6e187a7e2 100644 --- a/session.go +++ b/session.go @@ -775,6 +775,7 @@ func (s *session) scheduleSending() { func (s *session) tryQueueingUndecryptablePacket(p *receivedPacket) { if s.handshakeComplete { + utils.Debugf("Received undecryptable packet from %s after the handshake: %#v, %d bytes data", p.remoteAddr.String(), p.publicHeader, len(p.data)) return } if len(s.undecryptablePackets)+1 > protocol.MaxUndecryptablePackets { diff --git a/session_test.go b/session_test.go index 1e14f6224..679a1f33f 100644 --- a/session_test.go +++ b/session_test.go @@ -1290,7 +1290,11 @@ var _ = Describe("Session", func() { hdr := &PublicHeader{ PacketNumber: protocol.PacketNumber(i + 1), } - sess.handlePacket(&receivedPacket{publicHeader: hdr, data: []byte("foobar")}) + sess.handlePacket(&receivedPacket{ + publicHeader: hdr, + remoteAddr: &net.UDPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 1234}, + data: []byte("foobar"), + }) } } From 99527cf3d4bb1bf841edcd291a2cf8be27fc115e Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Fri, 16 Jun 2017 13:33:23 +0200 Subject: [PATCH 3/3] log the local address when starting a new connection in the client --- client.go | 2 +- client_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/client.go b/client.go index aeadee75f..221c3385d 100644 --- a/client.go +++ b/client.go @@ -93,7 +93,7 @@ func DialNonFWSecure(pconn net.PacketConn, remoteAddr net.Addr, host string, con return nil, err } - utils.Infof("Starting new connection to %s (%s), connectionID %x, version %d", hostname, c.conn.RemoteAddr().String(), c.connectionID, c.version) + utils.Infof("Starting new connection to %s (%s -> %s), connectionID %x, version %d", hostname, c.conn.LocalAddr().String(), c.conn.RemoteAddr().String(), c.connectionID, c.version) return c.session.(NonFWSession), c.establishSecureConnection() } diff --git a/client_test.go b/client_test.go index 3aab74888..e019d672a 100644 --- a/client_test.go +++ b/client_test.go @@ -29,7 +29,7 @@ var _ = Describe("Client", func() { Eventually(areSessionsRunning).Should(BeFalse()) msess, _, _ := newMockSession(nil, 0, 0, nil, nil) sess = msess.(*mockSession) - packetConn = &mockPacketConn{} + packetConn = &mockPacketConn{addr: &net.UDPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 1234}} config = &Config{ Versions: []protocol.VersionNumber{protocol.SupportedVersions[0], 77, 78}, }