diff --git a/session.go b/session.go index d03f542cf..069823b9b 100644 --- a/session.go +++ b/session.go @@ -339,6 +339,11 @@ var newClientSession = func( } else { s.tokenStoreKey = conn.RemoteAddr().String() } + if s.config.TokenStore != nil { + if token := s.config.TokenStore.Pop(s.tokenStoreKey); token != nil { + s.packer.SetToken(token.data) + } + } return s, s.postSetup() } diff --git a/session_test.go b/session_test.go index d31aff29d..c5382c4be 100644 --- a/session_test.go +++ b/session_test.go @@ -1660,6 +1660,8 @@ var _ = Describe("Client Session", func() { mockTokenStore = NewMockTokenStore(mockCtrl) tlsConf = &tls.Config{ServerName: "server"} quicConf.TokenStore = mockTokenStore + mockTokenStore.EXPECT().Pop(gomock.Any()) + quicConf.TokenStore = mockTokenStore }) It("handles NEW_TOKEN frames", func() {