]> Cypherpunks repositories - gostls13.git/commit
hex: fix panic in Decode when len(src) > 2*len(dst)
authorBenjamin Prosnitz <bprosnitz@gmail.com>
Fri, 13 Jan 2023 16:54:35 +0000 (11:54 -0500)
committerGopher Robot <gobot@golang.org>
Fri, 27 Jan 2023 15:28:30 +0000 (15:28 +0000)
commita106defddac515db4d70e1cad162b88dd026deee
treef4eddff3e58e4e17b9eff8686125b7aca0c05b06
parent6b8b7823c7fd9f3f2317f657120dc2e965d97b77
hex: fix panic in Decode when len(src) > 2*len(dst)

hex.Decode never checks the length of dst and triggers a panic
if there are insufficient bytes in the slice.

There isn't document on what the behavior *should* be in this case.
Two possibilities:
1. Error dst has insufficient space (as done in this change)
2. Reduce the length of the decode to min(dst, src)

Option 1 was chosen because it seems the least surprising or
subtle.

Change-Id: I3bf029e3d928202de716830434285e3c165f26dd
Reviewed-on: https://go-review.googlesource.com/c/go/+/461958
Reviewed-by: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Bryan Mills <bcmills@google.com>
Run-TryBot: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Benjamin Prosnitz <bprosnitz@gmail.com>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
src/encoding/hex/hex.go
src/encoding/hex/hex_test.go