Skip to content

Commit 2073b35

Browse files
rolandshoemakergopherbot
authored andcommitted
crypto/tls: add a bogo shim
Run the BoGo test suite. For now a number of tests are disabled, so that we can land the shim. Once the shim is in the tree I'll work on fixing tests, and aligning the TLS stack with the boringssl stack. Eventually we should also remove the --loose-errors flag. Fixes #51434 Change-Id: Ic8339fc34552936b798acf834011a129e375750e Reviewed-on: https://go-review.googlesource.com/c/go/+/486495 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Roland Shoemaker <roland@golang.org> Reviewed-by: Damien Neil <dneil@google.com>
1 parent c686783 commit 2073b35

File tree

3 files changed

+471
-3
lines changed

3 files changed

+471
-3
lines changed

src/crypto/tls/bogo_config.json

+175
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
{
2+
"DisabledTests": {
3+
"*QUIC*": "No QUIC support",
4+
"Compliance-fips*": "No FIPS",
5+
"*DTLS*": "No DTLS",
6+
"SendEmptyRecords*": "crypto/tls doesn't implement spam protections",
7+
"SendWarningAlerts*": "crypto/tls doesn't implement spam protections",
8+
"TooManyKeyUpdates": "crypto/tls doesn't implement spam protections (TODO: I think?)",
9+
"SkipNewSessionTicket": "TODO confusing? maybe bug",
10+
"SendUserCanceledAlerts*": "TODO may be a real bug?",
11+
"GREASE-Server-TLS13": "TODO ???",
12+
"GarbageCertificate*": "TODO ask davidben, alertDecode vs alertBadCertificate",
13+
"SendBogusAlertType": "sending wrong alert type",
14+
"EchoTLS13CompatibilitySessionID": "TODO reject compat session ID",
15+
"*ECH-Server*": "no ECH server support",
16+
"TLS-ECH-Client-UnsolictedHRRExtension": "TODO",
17+
"SupportTicketsWithSessionID": "TODO: first pass, this should be fixed",
18+
"NoNullCompression-TLS12": "TODO: first pass, this should be fixed",
19+
"KeyUpdate-RequestACK": "TODO: first pass, this should be fixed",
20+
"TLS13-HRR-InvalidCompressionMethod": "TODO: first pass, this should be fixed",
21+
"InvalidCompressionMethod": "TODO: first pass, this should be fixed",
22+
"TLS-TLS12-RSA_WITH_AES_128_GCM_SHA256-LargeRecord": "TODO: first pass, this should be fixed",
23+
"TLS-TLS1-RSA_WITH_AES_128_CBC_SHA-LargeRecord": "TODO: first pass, this should be fixed",
24+
"TLS-TLS11-RSA_WITH_AES_128_CBC_SHA-LargeRecord": "TODO: first pass, this should be fixed",
25+
"TLS-TLS12-RSA_WITH_AES_128_CBC_SHA-LargeRecord": "TODO: first pass, this should be fixed",
26+
"TLS-TLS12-RSA_WITH_AES_256_GCM_SHA384-LargeRecord": "TODO: first pass, this should be fixed",
27+
"TLS-TLS1-RSA_WITH_AES_256_CBC_SHA-LargeRecord": "TODO: first pass, this should be fixed",
28+
"TLS-TLS11-RSA_WITH_AES_256_CBC_SHA-LargeRecord": "TODO: first pass, this should be fixed",
29+
"TLS-TLS12-RSA_WITH_AES_256_CBC_SHA-LargeRecord": "TODO: first pass, this should be fixed",
30+
"TLS-TLS12-ECDHE_RSA_WITH_AES_128_CBC_SHA256-LargeRecord": "TODO: first pass, this should be fixed",
31+
"RequireAnyClientCertificate-TLS1": "TODO: first pass, this should be fixed",
32+
"RequireAnyClientCertificate-TLS11": "TODO: first pass, this should be fixed",
33+
"RequireAnyClientCertificate-TLS12": "TODO: first pass, this should be fixed",
34+
"ClientHelloVersionTooHigh": "TODO: first pass, this should be fixed",
35+
"MinorVersionTolerance": "TODO: first pass, this should be fixed",
36+
"IgnoreClientVersionOrder": "TODO: first pass, this should be fixed",
37+
"SupportedVersionSelection-TLS12": "TODO: first pass, this should be fixed",
38+
"MajorVersionTolerance": "TODO: first pass, this should be fixed",
39+
"DuplicateExtensionServer-TLS-TLS1": "TODO: first pass, this should be fixed",
40+
"DuplicateExtensionClient-TLS-TLS1": "TODO: first pass, this should be fixed",
41+
"UnsolicitedServerNameAck-TLS-TLS1": "TODO: first pass, this should be fixed",
42+
"TicketSessionIDLength-33-TLS-TLS1": "TODO: first pass, this should be fixed",
43+
"DuplicateExtensionServer-TLS-TLS11": "TODO: first pass, this should be fixed",
44+
"DuplicateExtensionClient-TLS-TLS11": "TODO: first pass, this should be fixed",
45+
"UnsolicitedServerNameAck-TLS-TLS11": "TODO: first pass, this should be fixed",
46+
"TicketSessionIDLength-33-TLS-TLS11": "TODO: first pass, this should be fixed",
47+
"DuplicateExtensionServer-TLS-TLS12": "TODO: first pass, this should be fixed",
48+
"DuplicateExtensionClient-TLS-TLS12": "TODO: first pass, this should be fixed",
49+
"UnsolicitedServerNameAck-TLS-TLS12": "TODO: first pass, this should be fixed",
50+
"TicketSessionIDLength-33-TLS-TLS12": "TODO: first pass, this should be fixed",
51+
"DuplicateExtensionClient-TLS-TLS13": "TODO: first pass, this should be fixed",
52+
"DuplicateExtensionServer-TLS-TLS13": "TODO: first pass, this should be fixed",
53+
"UnsolicitedServerNameAck-TLS-TLS13": "TODO: first pass, this should be fixed",
54+
"RenegotiationInfo-Forbidden-TLS13": "TODO: first pass, this should be fixed",
55+
"EMS-Forbidden-TLS13": "TODO: first pass, this should be fixed",
56+
"SendUnsolicitedOCSPOnCertificate-TLS13": "TODO: first pass, this should be fixed",
57+
"SendUnsolicitedSCTOnCertificate-TLS13": "TODO: first pass, this should be fixed",
58+
"SendUnknownExtensionOnCertificate-TLS13": "TODO: first pass, this should be fixed",
59+
"Resume-Server-NoTickets-TLS1-TLS1-TLS": "TODO: first pass, this should be fixed",
60+
"Resume-Server-NoTickets-TLS11-TLS11-TLS": "TODO: first pass, this should be fixed",
61+
"Resume-Server-NoTickets-TLS12-TLS12-TLS": "TODO: first pass, this should be fixed",
62+
"Resume-Server-NoPSKBinder": "TODO: first pass, this should be fixed",
63+
"Resume-Server-PSKBinderFirstExtension": "TODO: first pass, this should be fixed",
64+
"Resume-Server-PSKBinderFirstExtension-SecondBinder": "TODO: first pass, this should be fixed",
65+
"Resume-Server-NoPSKBinder-SecondBinder": "TODO: first pass, this should be fixed",
66+
"Resume-Server-OmitPSKsOnSecondClientHello": "TODO: first pass, this should be fixed",
67+
"Renegotiate-Server-Forbidden": "TODO: first pass, this should be fixed",
68+
"Renegotiate-Client-Forbidden-1": "TODO: first pass, this should be fixed",
69+
"Client-Sign-RSA_PKCS1_SHA1-TLS13": "TODO: first pass, this should be fixed",
70+
"Client-Sign-RSA_PKCS1_SHA256-TLS13": "TODO: first pass, this should be fixed",
71+
"Client-Sign-RSA_PKCS1_SHA384-TLS13": "TODO: first pass, this should be fixed",
72+
"Client-Sign-RSA_PKCS1_SHA512-TLS13": "TODO: first pass, this should be fixed",
73+
"Client-Sign-ECDSA_SHA1-TLS13": "TODO: first pass, this should be fixed",
74+
"Client-Sign-ECDSA_P224_SHA256-TLS13": "TODO: first pass, this should be fixed",
75+
"ClientAuth-NoFallback-TLS13": "TODO: first pass, this should be fixed",
76+
"ClientAuth-NoFallback-ECDSA": "TODO: first pass, this should be fixed",
77+
"ClientAuth-NoFallback-RSA": "TODO: first pass, this should be fixed",
78+
"ECDSACurveMismatch-Verify-TLS13": "TODO: first pass, this should be fixed",
79+
"Ed25519DefaultDisable-NoAdvertise": "TODO: first pass, this should be fixed",
80+
"Ed25519DefaultDisable-NoAccept": "TODO: first pass, this should be fixed",
81+
"NoCommonSignatureAlgorithms-TLS12-Fallback": "TODO: first pass, this should be fixed",
82+
"UnknownExtension-Client": "TODO: first pass, this should be fixed",
83+
"UnknownUnencryptedExtension-Client-TLS13": "TODO: first pass, this should be fixed",
84+
"UnofferedExtension-Client-TLS13": "TODO: first pass, this should be fixed",
85+
"UnknownExtension-Client-TLS13": "TODO: first pass, this should be fixed",
86+
"SendClientVersion-RSA": "TODO: first pass, this should be fixed",
87+
"NoCommonCurves": "TODO: first pass, this should be fixed",
88+
"PointFormat-EncryptedExtensions-TLS13": "TODO: first pass, this should be fixed",
89+
"PointFormat-Client-MissingUncompressed": "TODO: first pass, this should be fixed",
90+
"TLS13-SendNoKEMModesWithPSK-Server": "TODO: first pass, this should be fixed",
91+
"TLS13-DuplicateTicketEarlyDataSupport": "TODO: first pass, this should be fixed",
92+
"Basic-Client-NoTicket-TLS-Sync": "TODO: first pass, this should be fixed",
93+
"Basic-Server-RSA-TLS-Sync": "TODO: first pass, this should be fixed",
94+
"Basic-Client-NoTicket-TLS-Sync-SplitHandshakeRecords": "TODO: first pass, this should be fixed",
95+
"Basic-Server-RSA-TLS-Sync-SplitHandshakeRecords": "TODO: first pass, this should be fixed",
96+
"Basic-Client-NoTicket-TLS-Sync-PackHandshake": "TODO: first pass, this should be fixed",
97+
"Basic-Server-RSA-TLS-Sync-PackHandshake": "TODO: first pass, this should be fixed",
98+
"PartialSecondClientHelloAfterFirst": "TODO: first pass, this should be fixed",
99+
"PartialServerHelloWithHelloRetryRequest": "TODO: first pass, this should be fixed",
100+
"TrailingDataWithFinished-Server-TLS1": "TODO: first pass, this should be fixed",
101+
"PartialClientKeyExchangeWithClientHello": "TODO: first pass, this should be fixed",
102+
"TrailingDataWithFinished-Resume-Server-TLS1": "TODO: first pass, this should be fixed",
103+
"TrailingDataWithFinished-Resume-Client-TLS11": "TODO: first pass, this should be fixed",
104+
"TrailingDataWithFinished-Client-TLS1": "TODO: first pass, this should be fixed",
105+
"TrailingDataWithFinished-Client-TLS11": "TODO: first pass, this should be fixed",
106+
"TrailingDataWithFinished-Client-TLS12": "TODO: first pass, this should be fixed",
107+
"TrailingDataWithFinished-Client-TLS13": "TODO: first pass, this should be fixed",
108+
"PartialNewSessionTicketWithServerHelloDone": "TODO: first pass, this should be fixed",
109+
"TrailingDataWithFinished-Server-TLS11": "TODO: first pass, this should be fixed",
110+
"TrailingDataWithFinished-Server-TLS12": "TODO: first pass, this should be fixed",
111+
"TrailingDataWithFinished-Resume-Server-TLS11": "TODO: first pass, this should be fixed",
112+
"TrailingDataWithFinished-Resume-Client-TLS12": "TODO: first pass, this should be fixed",
113+
"TrailingDataWithFinished-Resume-Server-TLS12": "TODO: first pass, this should be fixed",
114+
"TrailingDataWithFinished-Resume-Client-TLS13": "TODO: first pass, this should be fixed",
115+
"TrailingDataWithFinished-Resume-Client-TLS1": "TODO: first pass, this should be fixed",
116+
"TrailingMessageData-ClientHello-TLS": "TODO: first pass, this should be fixed",
117+
"TrailingMessageData-ServerHello-TLS": "TODO: first pass, this should be fixed",
118+
"TrailingMessageData-ServerCertificate-TLS": "TODO: first pass, this should be fixed",
119+
"TrailingMessageData-ServerHelloDone-TLS": "TODO: first pass, this should be fixed",
120+
"TrailingMessageData-ServerKeyExchange-TLS": "TODO: first pass, this should be fixed",
121+
"TrailingMessageData-CertificateRequest-TLS": "TODO: first pass, this should be fixed",
122+
"TrailingMessageData-CertificateVerify-TLS": "TODO: first pass, this should be fixed",
123+
"TrailingMessageData-ServerFinished-TLS": "TODO: first pass, this should be fixed",
124+
"TrailingMessageData-ClientKeyExchange-TLS": "TODO: first pass, this should be fixed",
125+
"TrailingMessageData-TLS13-ClientHello-TLS": "TODO: first pass, this should be fixed",
126+
"TrailingMessageData-ClientFinished-TLS": "TODO: first pass, this should be fixed",
127+
"TrailingMessageData-NewSessionTicket-TLS": "TODO: first pass, this should be fixed",
128+
"TrailingMessageData-ClientCertificate-TLS": "TODO: first pass, this should be fixed",
129+
"TrailingMessageData-TLS13-CertificateRequest-TLS": "TODO: first pass, this should be fixed",
130+
"TrailingMessageData-TLS13-ServerCertificateVerify-TLS": "TODO: first pass, this should be fixed",
131+
"TrailingMessageData-TLS13-EncryptedExtensions-TLS": "TODO: first pass, this should be fixed",
132+
"TrailingMessageData-TLS13-ClientCertificate-TLS": "TODO: first pass, this should be fixed",
133+
"TrailingMessageData-TLS13-ClientCertificateVerify-TLS": "TODO: first pass, this should be fixed",
134+
"TrailingMessageData-TLS13-ServerCertificate-TLS": "TODO: first pass, this should be fixed",
135+
"ResumeTLS12SessionID-TLS13": "TODO: first pass, this should be fixed",
136+
"SkipEarlyData-TLS13": "TODO: first pass, this should be fixed",
137+
"DuplicateKeyShares-TLS13": "TODO: first pass, this should be fixed",
138+
"Server-TooLongSessionID-TLS13": "TODO: first pass, this should be fixed",
139+
"Client-TooLongSessionID": "TODO: first pass, this should be fixed",
140+
"Client-ShortSessionID": "TODO: first pass, this should be fixed",
141+
"TLS12NoSessionID-TLS13": "TODO: first pass, this should be fixed",
142+
"Server-TooLongSessionID-TLS12": "TODO: first pass, this should be fixed",
143+
"EmptyEncryptedExtensions-TLS13": "TODO: first pass, this should be fixed",
144+
"SkipEarlyData-SecondClientHelloEarlyData-TLS13": "TODO: first pass, this should be fixed",
145+
"EncryptedExtensionsWithKeyShare-TLS13": "TODO: first pass, this should be fixed",
146+
"HelloRetryRequest-DuplicateCurve-TLS13": "TODO: first pass, this should be fixed",
147+
"HelloRetryRequest-DuplicateCookie-TLS13": "TODO: first pass, this should be fixed",
148+
"HelloRetryRequest-Unknown-TLS13": "TODO: first pass, this should be fixed",
149+
"SendPostHandshakeChangeCipherSpec-TLS13": "TODO: first pass, this should be fixed",
150+
"ECDSAKeyUsage-Server-TLS12": "TODO: first pass, this should be fixed",
151+
"ECDSAKeyUsage-Server-TLS13": "TODO: first pass, this should be fixed",
152+
"RSAKeyUsage-Client-WantEncipherment-GotEnciphermentTLS1": "TODO: first pass, this should be fixed",
153+
"RSAKeyUsage-Server-WantSignature-GotEncipherment-TLS1": "TODO: first pass, this should be fixed",
154+
"RSAKeyUsage-Client-WantSignature-GotSignature-TLS1": "TODO: first pass, this should be fixed",
155+
"RSAKeyUsage-Client-WantEncipherment-GotEnciphermentTLS11": "TODO: first pass, this should be fixed",
156+
"RSAKeyUsage-Client-WantSignature-GotSignature-TLS11": "TODO: first pass, this should be fixed",
157+
"RSAKeyUsage-Client-WantEncipherment-GotEnciphermentTLS12": "TODO: first pass, this should be fixed",
158+
"RSAKeyUsage-Server-WantSignature-GotEncipherment-TLS12": "TODO: first pass, this should be fixed",
159+
"RSAKeyUsage-Server-WantSignature-GotEncipherment-TLS11": "TODO: first pass, this should be fixed",
160+
"RSAKeyUsage-Client-WantSignature-GotSignature-TLS12": "TODO: first pass, this should be fixed",
161+
"RSAKeyUsage-Client-WantSignature-GotSignature-TLS13": "TODO: first pass, this should be fixed",
162+
"RSAKeyUsage-Server-WantSignature-GotEncipherment-TLS13": "TODO: first pass, this should be fixed",
163+
"EmptyExtensions-ClientHello-TLS1": "TODO: first pass, this should be fixed",
164+
"OmitExtensions-ClientHello-TLS1": "TODO: first pass, this should be fixed",
165+
"EmptyExtensions-ClientHello-TLS12": "TODO: first pass, this should be fixed",
166+
"OmitExtensions-ClientHello-TLS12": "TODO: first pass, this should be fixed",
167+
"EmptyExtensions-ClientHello-TLS11": "TODO: first pass, this should be fixed",
168+
"OmitExtensions-ClientHello-TLS11": "TODO: first pass, this should be fixed",
169+
"DuplicateCertCompressionExt-TLS12": "TODO: first pass, this should be fixed",
170+
"DuplicateCertCompressionExt-TLS13": "TODO: first pass, this should be fixed",
171+
"Client-RejectJDK11DowngradeRandom": "TODO: first pass, this should be fixed",
172+
"CheckClientCertificateTypes": "TODO: first pass, this should be fixed",
173+
"CheckECDSACurve-TLS12": "TODO: first pass, this should be fixed"
174+
}
175+
}

0 commit comments

Comments
 (0)