From 55a8979bd57269f5d63c774afece0632c2a77397 Mon Sep 17 00:00:00 2001 From: Thomas De Keulenaer Date: Tue, 15 Aug 2017 18:45:34 +0200 Subject: [PATCH] Added session context to http.Request --- h2quic/response_writer.go | 2 +- h2quic/server.go | 1 + h2quic/server_test.go | 4 +++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/h2quic/response_writer.go b/h2quic/response_writer.go index 24689346..788286d8 100644 --- a/h2quic/response_writer.go +++ b/h2quic/response_writer.go @@ -83,7 +83,7 @@ func (w *responseWriter) Write(p []byte) (int, error) { func (w *responseWriter) Flush() {} -// TODO: Implement a functional CloseNotify method. +// This is a NOP. Use http.Request.Context func (w *responseWriter) CloseNotify() <-chan bool { return make(<-chan bool) } // test that we implement http.Flusher diff --git a/h2quic/server.go b/h2quic/server.go index 3647dc68..3fb072dc 100644 --- a/h2quic/server.go +++ b/h2quic/server.go @@ -170,6 +170,7 @@ func (s *Server) handleRequest(session streamCreator, headerStream quic.Stream, return err } + req.WithContext(session.Context()) req.RemoteAddr = session.RemoteAddr().String() if utils.Debug() { diff --git a/h2quic/server_test.go b/h2quic/server_test.go index 171b50c2..a474cbb1 100644 --- a/h2quic/server_test.go +++ b/h2quic/server_test.go @@ -65,7 +65,9 @@ func (s *mockSession) LocalAddr() net.Addr { func (s *mockSession) RemoteAddr() net.Addr { return &net.UDPAddr{IP: []byte{127, 0, 0, 1}, Port: 42} } -func (s *mockSession) Context() context.Context { panic("not implemented") } +func (s *mockSession) Context() context.Context { + return context.Background() +} var _ = Describe("H2 server", func() { var (