Test the client rejects invalid compression methods from the server.
Change-Id: I90286da596d5822d4cfedf40995d80cf76adaf97 Reviewed-on: https://boringssl-review.googlesource.com/17536 Reviewed-by: David Benjamin <davidben@google.com> Commit-Queue: David Benjamin <davidben@google.com>
This commit is contained in:
parent
7d7ed9f51b
commit
413e79e947
@ -1279,6 +1279,10 @@ type ProtocolBugs struct {
|
|||||||
// send in the ClientHello.
|
// send in the ClientHello.
|
||||||
SendCompressionMethods []byte
|
SendCompressionMethods []byte
|
||||||
|
|
||||||
|
// SendCompressionMethod is the compression method to send in the
|
||||||
|
// ServerHello.
|
||||||
|
SendCompressionMethod byte
|
||||||
|
|
||||||
// AlwaysSendPreSharedKeyIdentityHint, if true, causes the server to
|
// AlwaysSendPreSharedKeyIdentityHint, if true, causes the server to
|
||||||
// always send a ServerKeyExchange for PSK ciphers, even if the identity
|
// always send a ServerKeyExchange for PSK ciphers, even if the identity
|
||||||
// hint is empty.
|
// hint is empty.
|
||||||
|
@ -1044,7 +1044,7 @@ func (hs *serverHandshakeState) processClientHello() (isResume bool, err error)
|
|||||||
isDTLS: c.isDTLS,
|
isDTLS: c.isDTLS,
|
||||||
vers: c.wireVersion,
|
vers: c.wireVersion,
|
||||||
versOverride: config.Bugs.SendServerHelloVersion,
|
versOverride: config.Bugs.SendServerHelloVersion,
|
||||||
compressionMethod: compressionNone,
|
compressionMethod: config.Bugs.SendCompressionMethod,
|
||||||
}
|
}
|
||||||
|
|
||||||
hs.hello.random = make([]byte, 32)
|
hs.hello.random = make([]byte, 32)
|
||||||
|
@ -2508,6 +2508,21 @@ func addBasicTests() {
|
|||||||
expectedError: ":INVALID_COMPRESSION_LIST:",
|
expectedError: ":INVALID_COMPRESSION_LIST:",
|
||||||
expectedLocalError: "remote error: illegal parameter",
|
expectedLocalError: "remote error: illegal parameter",
|
||||||
},
|
},
|
||||||
|
// Test that the client rejects invalid compression methods
|
||||||
|
// from the server.
|
||||||
|
{
|
||||||
|
testType: clientTest,
|
||||||
|
name: "InvalidCompressionMethod",
|
||||||
|
config: Config{
|
||||||
|
MaxVersion: VersionTLS12,
|
||||||
|
Bugs: ProtocolBugs{
|
||||||
|
SendCompressionMethod: 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
shouldFail: true,
|
||||||
|
expectedError: ":UNSUPPORTED_COMPRESSION_ALGORITHM:",
|
||||||
|
expectedLocalError: "remote error: illegal parameter",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "GREASE-Client-TLS12",
|
name: "GREASE-Client-TLS12",
|
||||||
config: Config{
|
config: Config{
|
||||||
|
Loading…
Reference in New Issue
Block a user