From 1f8e94e9f65ed807abd934b863234ac7fb421a77 Mon Sep 17 00:00:00 2001 From: cuiweixie Date: Sat, 27 Aug 2022 11:43:39 +0800 Subject: [PATCH] crypto/internal/boring/fipstls: convert required to atomic type Change-Id: I73081b85e763122be1f5c0dbab25cecc9cf809df Reviewed-on: https://go-review.googlesource.com/c/go/+/426087 Reviewed-by: Filippo Valsorda Reviewed-by: Heschi Kreinick Auto-Submit: Filippo Valsorda TryBot-Result: Gopher Robot Run-TryBot: xie cui <523516579@qq.com> Reviewed-by: Benny Siegert --- src/crypto/internal/boring/fipstls/tls.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/crypto/internal/boring/fipstls/tls.go b/src/crypto/internal/boring/fipstls/tls.go index 701700e4e3..3bf1471fb0 100644 --- a/src/crypto/internal/boring/fipstls/tls.go +++ b/src/crypto/internal/boring/fipstls/tls.go @@ -11,7 +11,7 @@ package fipstls import "sync/atomic" -var required uint32 +var required atomic.Bool // Force forces crypto/tls to restrict TLS configurations to FIPS-approved settings. // By design, this call is impossible to undo (except in tests). @@ -19,7 +19,7 @@ var required uint32 // Note that this call has an effect even in programs using // standard crypto (that is, even when Enabled = false). func Force() { - atomic.StoreUint32(&required, 1) + required.Store(true) } // Abandon allows non-FIPS-approved settings. @@ -36,7 +36,7 @@ func Abandon() { if !hasSuffix(name, "_test") && !hasSuffix(name, ".test") && name != "NaClMain" && name != "" { panic("fipstls: invalid use of Abandon in " + name) } - atomic.StoreUint32(&required, 0) + required.Store(false) } // provided by runtime @@ -48,5 +48,5 @@ func hasSuffix(s, t string) bool { // Required reports whether FIPS-approved settings are required. func Required() bool { - return atomic.LoadUint32(&required) != 0 + return required.Load() } -- 2.50.0