Commit Graph

39 Commits

Author SHA1 Message Date
Marten Seemann
d6e3f3229f qtls: remove unneeded type alias for the tls.QUICEncryptionLevel (#4220)
* qtls: remove unneeded type alias for the tls.QUICEncryptionLevel

* handshake: make cryptoSetup.WriteRecord private
2023-12-28 18:59:56 -08:00
Marten Seemann
d795250479 drop support for Go 1.20, build on Go 1.22rc1 on CI (#4195)
* drop support for Go 1.20

* ci: udpate CircleCI to Go 1.21

* qtls: remove unnecessary type aliases

* ci: build using Go 1.22rc1
2023-12-27 20:31:58 -08:00
Marten Seemann
d234d62d52 qtls: only attempt 0-RTT resumption for 0-RTT enabled session tickets (#4183) 2023-12-09 06:17:47 -08:00
Marten Seemann
746290b78a never allow 0-RTT when using Dial, even if the session ticket allows it (#4125)
When resuming a TLS session using Dial (and not DialEarly), 0-RTT should
be disabled at the TLS layer, even if the session ticket allows for
0-RTT resumption.

This bug is not critical, since Dial doesn't return an EarlyConnection,
so the client wouldn't be able to actually send 0-RTT data in practice.
2023-10-25 08:20:23 -07:00
Ameagari
d1f6ea997c save the RTT in non-0-RTT session tickets (#4042)
* also send session ticket when 0-RTT is disabled for go1.21

* allow session ticket without transport parameters

* do not include transport parameters for non-0RTT session ticket

* remove the test assertion because it is not supported for go1.20

* Update internal/handshake/session_ticket.go

Co-authored-by: Marten Seemann <martenseemann@gmail.com>

* add a 0-RTT argument to unmarshaling session tickets

* bump sessionTicketRevision to 4

* check if non-0-RTT session ticket has expected length

* change parameter order

* add test checks

---------

Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2023-09-11 08:05:31 -07:00
Marten Seemann
2797f85fc0 switch from unmaintained golang/mock to go.uber.org/mock (#4050) 2023-08-28 02:23:55 -07:00
elagergren-spideroak
571d3adef4 fix compatibility with API breaking change in Go 1.21 (#4020)
* add Go 1.21 compatibility

Signed-off-by: Eric Lagergren <elagergren@spideroak-inc.com>

* refactor for Go 1.20

Signed-off-by: Eric Lagergren <elagergren@spideroak-inc.com>

---------

Signed-off-by: Eric Lagergren <elagergren@spideroak-inc.com>
2023-08-09 05:22:30 -07:00
Marten Seemann
3d89e545d3 use the new crypto/tls QUIC Transport (#3860) 2023-07-01 11:15:00 -07:00
Marten Seemann
e7751de92e qtls: fix cipher suite selection for ClientHellos (#3751) 2023-04-19 07:26:47 -07:00
Marten Seemann
23f4565108 qtls: don't set the tls.Config.CipherSuites for cipher suite tests (#3726)
* qtls: don't set the tls.Config.CipherSuites for cipher suite tests

* use qtls versions that don't allow setting of tls.Config.CipherSuites
2023-03-26 06:56:41 -07:00
Marten Seemann
f42357f096 drop qtls support for Go 1.18 2023-02-04 17:44:54 +13:00
Marten Seemann
58cedf7a4f rename module, adjust import paths to quic-go/quic-go (#3680) 2023-01-21 19:53:57 -08:00
Marten Seemann
9488539a49 update imports to use qtls and qpack from quic-go GitHub organization (#3676) 2023-01-20 13:42:54 -08:00
Marten Seemann
576d85cd3d add support for Go 1.20 (#3641) 2023-01-17 23:22:36 -08:00
Marten Seemann
870fbe7ab0 migrate to Ginkgo v2 2022-10-11 16:38:44 +04:00
Marten Seemann
ea9de26ed5 drop support for Go 1.16 and 1.17 (#3482) 2022-08-10 03:42:14 -07:00
Marten Seemann
f29dd273b4 update for Go 1.19beta1 (#3460) 2022-06-28 01:12:44 -07:00
Marten Seemann
ba697c5838 also throw an error for outdated Go versions 2022-03-30 16:05:21 +01:00
Marten Seemann
aef7ac0a48 improve the error thrown when building with an unsupported Go version 2022-03-30 15:44:59 +01:00
Marten Seemann
ba4d02017c add support for Go 1.18 2021-12-15 10:13:31 +04:00
Marten Seemann
59ea0daea1 run gofmt to add the new go:build tags 2021-09-14 18:37:41 +02:00
Marten Seemann
68e468a3bc drop support for Go 1.15 2021-08-05 14:18:56 +02:00
Marten Seemann
2e7c56dacc prevent go mod vendor from stumbling over the Go 1.18 file 2021-06-03 13:33:22 -07:00
Marten Seemann
bffe54007b remove CipherSuiteName and HkdfExtract for Go 1.17 2021-05-30 20:52:22 -07:00
Marten Seemann
a2c14938ec fix relocation target for cipherSuiteTLS13ByID in Go 1.17 2021-05-30 20:51:21 -07:00
Marten Seemann
22112b7b66 use HkdfExtract from x/crypto
This means we don't have to expose it in qtls any more.
2021-05-30 20:26:55 -07:00
Marten Seemann
540c6ec074 Merge pull request #3174 from lucas-clemente/use-tls-cipher-suite-name
use tls.CipherSuiteName, instead of wrapping it in the qtls package
2021-05-29 11:45:39 -07:00
Marten Seemann
0790066a2e Merge pull request #3175 from lucas-clemente/dont-use-qtls-hkdf-expand-label
use a pre-generated test vectors to test hkdfExpandLabel
2021-05-29 11:41:11 -07:00
Marten Seemann
d64e40895b simplify the qtls tests 2021-05-17 09:05:08 -07:00
Marten Seemann
808c9c4361 add support for Go 1.17 (tip) 2021-05-16 18:56:27 -07:00
Marten Seemann
b61e2faf79 prevent quic-go from building on Go 1.17 2021-05-15 19:01:56 -07:00
Marten Seemann
599d181316 use tls.CipherSuiteName, instead of wrapping it in the qtls package 2021-05-10 20:41:21 -07:00
Marten Seemann
05af55b0c9 use a pre-generated test vectors to test hkdfExpandLabel
The only reason we were using qtls.HkdfExpandLabel was to test our own
implementation of HKDF-Expand-Label. By using a pre-generated test
vector, we won't have to expose this function from qtls any more.
2021-05-10 20:41:05 -07:00
Marten Seemann
1113892489 remove stray struct equality check
This check was moved to qtls.
2021-03-09 16:17:41 +08:00
Marten Seemann
62a906de3c update Go to 1.16, drop support for 1.14 2021-02-17 12:17:46 +08:00
Marten Seemann
57e3f55279 add support for Go 1.16 2020-12-29 11:48:02 +07:00
Marten Seemann
30c91149c2 fill out the http.Response.TLS field 2020-11-02 11:29:42 +07:00
Marten Seemann
125318d9c9 add support for Go 1.15 2020-08-20 13:33:33 +07:00
Marten Seemann
977dbc828c move all dependencies on qtls to a separate package 2020-08-18 14:26:23 +07:00