Commit graph

23 commits

Author SHA1 Message Date
Marten Seemann
621e9d4642 use a generic streams map for incoming streams 2022-08-11 18:31:45 +04:00
Marten Seemann
592fb9cad9 introduce a dedicated qerr.TransportError and qerr.ApplicationError 2021-05-01 09:38:48 +07:00
Marten Seemann
0b267408c5 use a single map in the incoming streams map 2020-11-20 16:26:14 +07:00
Marten Seemann
64daf71e3a fix race condition when stream is created while AcceptStream is waiting 2020-11-13 18:13:02 +07:00
Marten Seemann
3c62c48fca never send a value larger than 2^60 in MAX_STREAMS frames 2020-08-11 10:58:06 +07:00
Marten Seemann
b69e2a805f remove nolint commands that show up in GoDoc 2019-11-16 18:52:25 +08:00
Marten Seemann
4b58bc0d07 make the stream deletion error message more specific 2019-11-08 11:09:54 +07:00
Marten Seemann
03483d5e71 refactor how sessions are deleted
Replacing sessions with different structs representing a closed session
doesn't work if a session is using multiple connection IDs.
2019-09-25 15:34:38 +07:00
Marten Seemann
5550ba2c3b add a context to Session.Accept{Uni}Stream 2019-06-22 19:37:11 +08:00
Marten Seemann
f74082b2fb use chan instead of sync.Cond to signal that new streams can be accepted 2019-06-22 19:36:54 +08:00
Marten Seemann
857e4ae9a9 use stream numbers, not stream ids, in the stream maps 2019-06-05 20:01:51 +08:00
Marten Seemann
a8633a952c introduce a type for the stream number 2019-06-05 17:45:17 +08:00
Marten Seemann
f17ddffb70 don't delete a stream until it has been accepted 2019-01-23 17:24:10 +07:00
Marten Seemann
9518c90c0a implement and use the MAX_STREAMS frame 2018-11-10 09:38:50 +07:00
Marten Seemann
0f931ca54e use a uint64 for stream counts 2018-11-10 09:05:33 +07:00
Marten Seemann
e7b6d6af00 fix stream limit increase in the case of many open streams 2018-11-08 15:09:11 +07:00
Marten Seemann
08008b680e make the incoming streams map work with stream 0
Stream 0 is now a valid stream ID used for application data, so the
streams map must be able to accept this stream.
2018-10-26 16:11:25 +07:00
Marten Seemann
f8d28a96fe close all streams when closing the IETF QUIC streams map 2018-04-17 19:29:51 +09:00
Marten Seemann
4fa68b0788 fix race condition in GetStream in outgoing streams map 2018-02-22 18:48:53 +08:00
Marten Seemann
77a4bf17ca fix race condition in GetOrOpenStream in incoming streams map 2018-02-22 09:21:31 +08:00
Marten Seemann
8e332c2e13 implement sending of MAX_STREAM_ID frames
We can now impose a limit on the number of stream for IETF QUIC, and
advertise that in the transport parameters during the handshake.
2018-02-06 08:32:16 +08:00
Marten Seemann
e36b8d8e30 throw an error if the peer tries to open a too high stream 2018-02-06 08:30:58 +08:00
Marten Seemann
be6493eff8 implement a map for incoming streams 2018-02-06 07:49:10 +08:00