]> Cypherpunks repositories - gostls13.git/commitdiff
crypto/tls: use cryptobyte.NewFixedBuilder
authorFilippo Valsorda <filippo@golang.org>
Sat, 8 May 2021 05:07:30 +0000 (01:07 -0400)
committerFilippo Valsorda <filippo@golang.org>
Mon, 4 Oct 2021 17:17:11 +0000 (17:17 +0000)
Change-Id: Ia2a9465680e766336dae34f5d2b3cb412185bf1f
Reviewed-on: https://go-review.googlesource.com/c/go/+/318131
Trust: Filippo Valsorda <filippo@golang.org>
Run-TryBot: Filippo Valsorda <filippo@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
src/crypto/tls/handshake_messages.go

index b5f81e443668a1ead5e0c9c5e8806437b32f7a6c..17cf85910fafd8603949d68a6360b972e3aa5802 100644 (file)
@@ -329,8 +329,7 @@ func (m *clientHelloMsg) updateBinders(pskBinders [][]byte) {
        m.pskBinders = pskBinders
        if m.raw != nil {
                lenWithoutBinders := len(m.marshalWithoutBinders())
-               // TODO(filippo): replace with NewFixedBuilder once CL 148882 is imported.
-               b := cryptobyte.NewBuilder(m.raw[:lenWithoutBinders])
+               b := cryptobyte.NewFixedBuilder(m.raw[:lenWithoutBinders])
                b.AddUint16LengthPrefixed(func(b *cryptobyte.Builder) {
                        for _, binder := range m.pskBinders {
                                b.AddUint8LengthPrefixed(func(b *cryptobyte.Builder) {
@@ -338,7 +337,7 @@ func (m *clientHelloMsg) updateBinders(pskBinders [][]byte) {
                                })
                        }
                })
-               if len(b.BytesOrPanic()) != len(m.raw) {
+               if out, err := b.Bytes(); err != nil || len(out) != len(m.raw) {
                        panic("tls: internal error: failed to update binders")
                }
        }