Marten Seemann
bfbf0bca48
always queue window updates when data is being read
...
There's no need to have a separate call in the flow controller interface
for this.
2019-01-22 23:46:12 +07:00
Marten Seemann
ff9bb5bd96
Merge pull request #1745 from lucas-clemente/remove-megacheck
...
run gometalinter with staticcheck instead of megacheck
2019-01-22 16:59:27 +07:00
Marten Seemann
6117d8c722
run gometalinter with staticcheck instead of megacheck
...
Megacheck was deprecated and recently removed from gometalinter:
https://github.com/alecthomas/gometalinter/pull/579 .
2019-01-22 14:55:12 +07:00
Marten Seemann
de05de297f
Merge pull request #1739 from lucas-clemente/connection-state
...
set the ConnectionState
2019-01-17 09:14:24 +07:00
Marten Seemann
a84d626cd5
Merge pull request #1733 from lucas-clemente/remove-leftover-todo
...
remove leftover TODO in the crypto setup
2019-01-17 09:13:53 +07:00
Marten Seemann
84037e3024
Merge pull request #1734 from lucas-clemente/ack-encryption-level
...
send ACK frames in the correct packet number space
2019-01-16 08:58:01 +07:00
Marten Seemann
9122bfe9ad
Merge pull request #1732 from lucas-clemente/tls-handshake-write-key
...
retrieve the handshake write key when receiving the ServerHello
2019-01-16 08:55:47 +07:00
Marten Seemann
913431d1a4
Merge pull request #1738 from lucas-clemente/multiplexer-remove
...
delete unused connections from the multiplexer
2019-01-16 08:55:30 +07:00
Marten Seemann
4ba3aa0de8
set the ConnectionState
2019-01-14 11:55:07 +07:00
Jan Rüth
1a0aa50471
delete unused connections from the multiplexer
2019-01-14 11:33:14 +07:00
Marten Seemann
1306787703
Merge pull request #1730 from lucas-clemente/change-dev-version
...
change the version number for the development version
2019-01-11 15:38:35 +07:00
Marten Seemann
a303ad9745
always send ACKs in the correct packet number space
2019-01-11 11:12:07 +07:00
Marten Seemann
258e43ab95
rename the receivedPacketHandler to receivedPacketTracker
2019-01-11 10:52:39 +07:00
Marten Seemann
5ccc367462
start ignoring packets in ACK frames only after the handshake completed
2019-01-11 10:52:39 +07:00
Marten Seemann
ad3f39a5d7
retrieve the handshake write key when receiving the ServerHello
2019-01-11 10:52:08 +07:00
Marten Seemann
337b9f9a93
remove leftover TODO in the crypto setup
2019-01-11 09:22:17 +07:00
Marten Seemann
3f8728ddfc
Merge pull request #1729 from protocol7/fix-shortheader-encryption
...
correctly set the 1-RTT header protection mask
2019-01-11 00:03:43 +07:00
Niklas Gustavsson
edecc88ebf
Set is1RTT correctly for sealer/opener
...
Ensure that the rigth mask is picked for header protection.
2019-01-10 16:39:01 +01:00
Marten Seemann
3f80870922
change the version number for the development version
...
This now uses the highest version number reserved for quic-go in
https://github.com/quicwg/base-drafts/wiki/QUIC-Versions .
2019-01-10 22:06:29 +07:00
Marten Seemann
6fbe8d563e
Merge pull request #1713 from lucas-clemente/draft-test-vectors
...
use the test vectors from the draft
2019-01-07 10:18:57 +07:00
Marten Seemann
62f131fcc1
Merge pull request #1716 from lucas-clemente/fix-aead-nonces
...
fix nonce usage in the AEAD, use the AEAD provided by qtls for Initials
2019-01-07 10:18:26 +07:00
Marten Seemann
45458b3859
add the complete packet test vectors for initial packets
2019-01-07 09:11:49 +07:00
Marten Seemann
c0e9faa505
use the initial test vectors from the draft
2019-01-07 09:07:38 +07:00
Marten Seemann
b4356d7348
fix nonce usage in the AEAD, use the AEAD provided by qtls for Initials
2019-01-07 09:04:03 +07:00
Marten Seemann
2cb72ad098
Merge pull request #1710 from lucas-clemente/proxy-remove-version
...
remove unneeded version parameter from proxy constructor
2019-01-07 08:48:19 +07:00
Marten Seemann
34a35b7df6
Merge pull request #1714 from lucas-clemente/fix-initial-logging
...
don't log Initial packets in the packet handler map
2019-01-07 08:46:03 +07:00
Marten Seemann
e6d0ea630e
Merge pull request #1718 from lucas-clemente/fix-session-queue
...
implement a queue of session waiting to be accepted
2019-01-07 08:45:22 +07:00
Marten Seemann
ccfa4c304d
Merge pull request #1721 from lucas-clemente/stream-open-errors
...
return a net.Error when opening streams
2019-01-07 08:44:50 +07:00
Marten Seemann
086cc85b98
Merge pull request #1712 from lucas-clemente/fix-ack-delay-for-pn0
...
correctly set the ack delay in an ACK of packet number 0
2019-01-07 08:44:32 +07:00
Marten Seemann
4294493a1a
Merge pull request #1715 from lucas-clemente/fix-quic-ext-codepoint
...
fix quic_transport_parameters TLS extension code point
2019-01-07 08:43:30 +07:00
Marten Seemann
488d4a1a85
Merge pull request #1717 from lucas-clemente/key-derivation
...
update the HKDF labels
2019-01-07 08:38:05 +07:00
Marten Seemann
74de053685
Merge pull request #1711 from lucas-clemente/fix-1708
...
properly close session in handshake integration tests
2019-01-07 08:04:58 +07:00
Marten Seemann
c6360bd078
Merge pull request #1722 from lucas-clemente/remove-unused-decryption-error-check
...
remove unneeded check for decryption errors in session
2019-01-07 08:04:28 +07:00
Marten Seemann
9025133936
remove unneeded check for decryption errors in session
2019-01-06 17:34:24 +07:00
Marten Seemann
a2e48e204b
return a net.Error when opening streams
...
net.Error.Temporary() will be true if no stream can be opened when the
peer's stream limit is reached.
2019-01-06 17:18:43 +07:00
Marten Seemann
181aa493e0
make sure not to return closed session from Listener.Accept()
2019-01-06 15:27:42 +07:00
Marten Seemann
90514d53d1
reject new connection attempts if the server's accept queue is full
2019-01-06 15:26:43 +07:00
Marten Seemann
1301610a54
never block when calling the onHandshakeComplete callback
2019-01-06 11:43:49 +07:00
Marten Seemann
bbbeb7d32c
update the HKDF labels
2019-01-05 18:01:02 +07:00
Marten Seemann
177c81610b
rename packet number encryption to header encryption
2019-01-05 18:00:22 +07:00
Marten Seemann
0485090f9a
fix quic_transport_parameters TLS extension code point
2019-01-05 16:23:27 +07:00
Marten Seemann
73c4391a96
don't log Initial packets in the packet handler map
2019-01-05 16:16:58 +07:00
Marten Seemann
5e3c96024a
correctly set the ack delay in an ACK of packet number 0
2019-01-05 13:05:14 +07:00
Marten Seemann
68f1d6d0ca
properly close session in handshake integration tests
...
Otherwise there's a race condition when setting the supported versions.
2019-01-05 12:45:44 +07:00
Marten Seemann
2367ab35bb
remove unneeded version parameter from proxy constructor
2019-01-05 12:36:52 +07:00
Marten Seemann
8ac77be934
Merge pull request #1703 from lucas-clemente/fix-1697
...
don't close the session when unpacking a packet fails
2019-01-05 10:59:41 +07:00
Marten Seemann
acd17c1f6b
Merge pull request #1706 from lucas-clemente/tail-loss-integration-test
...
add an integration test for tail loss recovery
2019-01-05 10:58:43 +07:00
Marten Seemann
131f561be0
don't close the session when unpacking a packet fails
...
Before a packet is successfully authenticated, we can't be sure if this
is a packet that was injected by an attacker. If any error occurs before
authenticating the packet, we should just drop it.
2019-01-03 18:53:43 +07:00
Marten Seemann
855b643c7c
move frame parsing to the session
...
This way, we can handle every parsed frame directly, and avoid
allocating a slice of parsed frames.
2019-01-03 18:53:36 +07:00
Marten Seemann
05645b546c
remove special case for Retry packets from the session
...
Retry packets are never passed to the session, so there's no need to
handle them there.
2019-01-03 18:52:32 +07:00