From: EKR Date: Wed, 11 Jan 2017 21:46:27 +0000 (-0800) Subject: crypto/tls: fix clientHelloMsg fuzzer not to generate the RI SCSV X-Git-Tag: go1.10beta1~1168 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=0f9a2cf2c4e1d223ba30db4b5127991e97a830e4;p=gostls13.git crypto/tls: fix clientHelloMsg fuzzer not to generate the RI SCSV It was causing mysterious fuzzing failure because it affects the unmarshaling of the secureNegotiationSupported field. Change-Id: Id396b84eab90a3b22fb6e306b10bdd7e39707012 Reviewed-on: https://go-review.googlesource.com/60912 Run-TryBot: Filippo Valsorda TryBot-Result: Gobot Gobot Reviewed-by: Adam Langley --- diff --git a/src/crypto/tls/handshake_messages_test.go b/src/crypto/tls/handshake_messages_test.go index 7add97c32c..49c13eecf2 100644 --- a/src/crypto/tls/handshake_messages_test.go +++ b/src/crypto/tls/handshake_messages_test.go @@ -116,7 +116,11 @@ func (*clientHelloMsg) Generate(rand *rand.Rand, size int) reflect.Value { m.sessionId = randomBytes(rand.Intn(32), rand) m.cipherSuites = make([]uint16, rand.Intn(63)+1) for i := 0; i < len(m.cipherSuites); i++ { - m.cipherSuites[i] = uint16(rand.Int31()) + cs := uint16(rand.Int31()) + if cs == scsvRenegotiation { + cs += 1 + } + m.cipherSuites[i] = cs } m.compressionMethods = randomBytes(rand.Intn(63)+1, rand) if rand.Intn(10) > 5 {