Unverified Commit 29ee7f18 authored by Marten Seemann's avatar Marten Seemann
Browse files

open new streams synchronously

parent d048f057
......@@ -52,8 +52,10 @@ func (c *quicConn) AcceptStream() (smux.Stream, error) {
return &quicStream{Stream: str}, nil
}
// OpenStream opens a new stream
// It blocks until a new stream can be opened (when limited by the QUIC maximum stream limit)
func (c *quicConn) OpenStream() (smux.Stream, error) {
str, err := c.sess.OpenStream()
str, err := c.sess.OpenStreamSync()
if err != nil {
return nil, err
}
......
......@@ -42,11 +42,13 @@ var _ quic.Session = &mockQuicSession{}
func (s *mockQuicSession) AcceptStream() (quic.Stream, error) {
return s.streamToAccept, s.streamAcceptErr
}
func (s *mockQuicSession) OpenStream() (quic.Stream, error) { return s.streamToOpen, s.streamOpenErr }
func (s *mockQuicSession) OpenStreamSync() (quic.Stream, error) { return s.streamToOpen, nil }
func (s *mockQuicSession) Close(error) error { s.closed = true; return nil }
func (s *mockQuicSession) LocalAddr() net.Addr { return s.localAddr }
func (s *mockQuicSession) RemoteAddr() net.Addr { return s.remoteAddr }
func (s *mockQuicSession) OpenStream() (quic.Stream, error) { return s.streamToOpen, s.streamOpenErr }
func (s *mockQuicSession) OpenStreamSync() (quic.Stream, error) {
return s.streamToOpen, s.streamOpenErr
}
func (s *mockQuicSession) Close(error) error { s.closed = true; return nil }
func (s *mockQuicSession) LocalAddr() net.Addr { return s.localAddr }
func (s *mockQuicSession) RemoteAddr() net.Addr { return s.remoteAddr }
var _ = Describe("Conn", func() {
var (
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment