http3: don't expose ClientConn.HandleUnidirectionalStreams (#4695)

This commit is contained in:
Marten Seemann
2024-10-14 00:45:49 -05:00
committed by GitHub
parent b4ae847386
commit 0a6e362879
4 changed files with 16 additions and 16 deletions

View File

@@ -111,7 +111,7 @@ func newClientConn(
if streamHijacker != nil { if streamHijacker != nil {
go c.handleBidirectionalStreams(streamHijacker) go c.handleBidirectionalStreams(streamHijacker)
} }
go c.connection.HandleUnidirectionalStreams(uniStreamHijacker) go c.connection.handleUnidirectionalStreams(uniStreamHijacker)
return c return c
} }

View File

@@ -170,7 +170,7 @@ func (c *connection) CloseWithError(code quic.ApplicationErrorCode, msg string)
return c.Connection.CloseWithError(code, msg) return c.Connection.CloseWithError(code, msg)
} }
func (c *connection) HandleUnidirectionalStreams(hijack func(StreamType, quic.ConnectionTracingID, quic.ReceiveStream, error) (hijacked bool)) { func (c *connection) handleUnidirectionalStreams(hijack func(StreamType, quic.ConnectionTracingID, quic.ReceiveStream, error) (hijacked bool)) {
var ( var (
rcvdControlStr atomic.Bool rcvdControlStr atomic.Bool
rcvdQPACKEncoderStr atomic.Bool rcvdQPACKEncoderStr atomic.Bool

View File

@@ -46,7 +46,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(conn.ReceivedSettings()).Should(BeClosed()) Eventually(conn.ReceivedSettings()).Should(BeClosed())
Expect(conn.Settings().EnableDatagrams).To(BeTrue()) Expect(conn.Settings().EnableDatagrams).To(BeTrue())
@@ -85,7 +85,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(closed).Should(BeClosed()) Eventually(closed).Should(BeClosed())
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
@@ -123,7 +123,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
}) })
@@ -159,7 +159,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
}) })
@@ -186,7 +186,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
Eventually(reset).Should(BeClosed()) Eventually(reset).Should(BeClosed())
@@ -218,7 +218,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
Eventually(closed).Should(BeClosed()) Eventually(closed).Should(BeClosed())
@@ -250,7 +250,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
Eventually(closed).Should(BeClosed()) Eventually(closed).Should(BeClosed())
@@ -287,7 +287,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
Eventually(closed).Should(BeClosed()) Eventually(closed).Should(BeClosed())
@@ -321,7 +321,7 @@ var _ = Describe("Connection", func() {
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
defer close(done) defer close(done)
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
Eventually(closed).Should(BeClosed()) Eventually(closed).Should(BeClosed())
@@ -363,7 +363,7 @@ var _ = Describe("Connection", func() {
}) })
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
}) })
@@ -378,7 +378,7 @@ var _ = Describe("Connection", func() {
}) })
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(done).Should(BeClosed()) Eventually(done).Should(BeClosed())
}) })
@@ -395,7 +395,7 @@ var _ = Describe("Connection", func() {
}) })
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
Eventually(delivered).Should(BeClosed()) Eventually(delivered).Should(BeClosed())
@@ -430,7 +430,7 @@ var _ = Describe("Connection", func() {
qconn.EXPECT().ReceiveDatagram(gomock.Any()).Return(nil, errors.New("test done")) qconn.EXPECT().ReceiveDatagram(gomock.Any()).Return(nil, errors.New("test done"))
go func() { go func() {
defer GinkgoRecover() defer GinkgoRecover()
conn.HandleUnidirectionalStreams(nil) conn.handleUnidirectionalStreams(nil)
}() }()
data, err := str.ReceiveDatagram(context.Background()) data, err := str.ReceiveDatagram(context.Background())

View File

@@ -526,7 +526,7 @@ func (s *Server) handleConn(conn quic.Connection) error {
s.Logger, s.Logger,
s.IdleTimeout, s.IdleTimeout,
) )
go hconn.HandleUnidirectionalStreams(s.UniStreamHijacker) go hconn.handleUnidirectionalStreams(s.UniStreamHijacker)
var nextStreamID quic.StreamID var nextStreamID quic.StreamID
var wg sync.WaitGroup var wg sync.WaitGroup