From: Pantelis Sampaziotis Date: Wed, 14 Oct 2020 19:42:13 +0000 (+0000) Subject: crypto/x509: add Unwrap to SystemRootsError X-Git-Tag: go1.16beta1~302 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=f7ef5ca54a103ed67425e1efe6d39d3bc8067bad;p=gostls13.git crypto/x509: add Unwrap to SystemRootsError This change modifies Go to add the Unwrap method to SystemRootsError Updates #30322 Change-Id: Ibe63d1d0bc832fc0607f09053908d55275a6f350 GitHub-Last-Rev: 9a95bc66019d25f02a0a5f92a87e9405a52802e4 GitHub-Pull-Request: golang/go#41981 Reviewed-on: https://go-review.googlesource.com/c/go/+/262343 Reviewed-by: Damien Neil Reviewed-by: Filippo Valsorda Trust: Damien Neil Run-TryBot: Filippo Valsorda TryBot-Result: Go Bot --- diff --git a/src/crypto/x509/verify.go b/src/crypto/x509/verify.go index cb8d8f872d..5fdd4cb9fe 100644 --- a/src/crypto/x509/verify.go +++ b/src/crypto/x509/verify.go @@ -187,6 +187,8 @@ func (se SystemRootsError) Error() string { return msg } +func (se SystemRootsError) Unwrap() error { return se.Err } + // errNotParsed is returned when a certificate without ASN.1 contents is // verified. Platform-specific verification needs the ASN.1 contents. var errNotParsed = errors.New("x509: missing ASN.1 contents; use ParseCertificate") diff --git a/src/crypto/x509/verify_test.go b/src/crypto/x509/verify_test.go index c7a715bbcb..9cc17c7b3d 100644 --- a/src/crypto/x509/verify_test.go +++ b/src/crypto/x509/verify_test.go @@ -2005,3 +2005,11 @@ func TestSystemRootsError(t *testing.T) { t.Errorf("error was not SystemRootsError: %v", err) } } + +func TestSystemRootsErrorUnwrap(t *testing.T) { + var err1 = errors.New("err1") + err := SystemRootsError{Err: err1} + if !errors.Is(err, err1) { + t.Error("errors.Is failed, wanted success") + } +}