diff options
| author | Russ Cox <rsc@golang.org> | 2022-04-27 09:03:35 -0400 |
|---|---|---|
| committer | Russ Cox <rsc@golang.org> | 2022-04-29 14:23:19 +0000 |
| commit | e5407501cb5c43f9ba874fe5dad215435acbf5a2 (patch) | |
| tree | 656e8f9892a61d65a75c05b933570de49c2b5a4a /src/cmd/link/internal | |
| parent | fe006d641079e8943833573bd1275ef51eb7fb60 (diff) | |
| download | go-e5407501cb5c43f9ba874fe5dad215435acbf5a2.tar.xz | |
[dev.boringcrypto] cmd: use notsha256 instead of md5, sha1, sha256
When we add GOEXPERIMENT=boringcrypto, the bootstrap process
will not converge if the compiler itself depends on the boringcrypto
cgo-based implementations of sha1 and sha256.
Using notsha256 avoids boringcrypto and makes bootstrap converge.
Removing md5 is not strictly necessary but it seemed worthwhile to
be consistent.
For #51940.
Change-Id: Iba649507e0964d1a49a1d16e463dd23c4e348f14
Reviewed-on: https://go-review.googlesource.com/c/go/+/402595
Reviewed-by: Ian Lance Taylor <iant@google.com>
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Diffstat (limited to 'src/cmd/link/internal')
| -rw-r--r-- | src/cmd/link/internal/ld/elf.go | 6 | ||||
| -rw-r--r-- | src/cmd/link/internal/ld/lib.go | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/src/cmd/link/internal/ld/elf.go b/src/cmd/link/internal/ld/elf.go index d93f72e112..343803b47c 100644 --- a/src/cmd/link/internal/ld/elf.go +++ b/src/cmd/link/internal/ld/elf.go @@ -5,11 +5,11 @@ package ld import ( + "cmd/internal/notsha256" "cmd/internal/objabi" "cmd/internal/sys" "cmd/link/internal/loader" "cmd/link/internal/sym" - "crypto/sha1" "debug/elf" "encoding/binary" "encoding/hex" @@ -1533,10 +1533,10 @@ func (ctxt *Link) doelf() { sb.SetType(sym.SRODATA) ldr.SetAttrSpecial(s, true) sb.SetReachable(true) - sb.SetSize(sha1.Size) + sb.SetSize(notsha256.Size) sort.Sort(byPkg(ctxt.Library)) - h := sha1.New() + h := notsha256.New() for _, l := range ctxt.Library { h.Write(l.Fingerprint[:]) } diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go index 36db56950b..5103e55e00 100644 --- a/src/cmd/link/internal/ld/lib.go +++ b/src/cmd/link/internal/ld/lib.go @@ -34,6 +34,7 @@ import ( "bytes" "cmd/internal/bio" "cmd/internal/goobj" + "cmd/internal/notsha256" "cmd/internal/objabi" "cmd/internal/sys" "cmd/link/internal/loadelf" @@ -42,7 +43,6 @@ import ( "cmd/link/internal/loadpe" "cmd/link/internal/loadxcoff" "cmd/link/internal/sym" - "crypto/sha1" "debug/elf" "debug/macho" "encoding/base64" @@ -929,7 +929,7 @@ func typeSymbolMangle(name string) string { if len(name) <= 14 && !strings.Contains(name, "@") { // Issue 19529 return name } - hash := sha1.Sum([]byte(name)) + hash := notsha256.Sum256([]byte(name)) prefix := "type." if name[5] == '.' { prefix = "type.." |
