Compare commits
No commits in common. "c8-stream-rhel8" and "stream-go-toolset-rhel-next-rhel-8.10.0" have entirely different histories.
c8-stream-
...
stream-go-
|
@ -1,2 +1,23 @@
|
||||||
SOURCES/go1.21.9-1-openssl-fips.tar.gz
|
SOURCES/go1.19.4-1-openssl-fips.tar.gz
|
||||||
SOURCES/go1.21.9.tar.gz
|
SOURCES/go1.19.4.tar.gz
|
||||||
|
/go1.19.4-1-openssl-fips.tar.gz
|
||||||
|
/go1.19.4.tar.gz
|
||||||
|
/go1.19.6-1-openssl-fips.tar.gz
|
||||||
|
/go1.19.6.tar.gz
|
||||||
|
/go1.20.3.tar.gz
|
||||||
|
/go1.20.3-1-openssl-fips.tar.gz
|
||||||
|
/go1.20.4.tar.gz
|
||||||
|
/go1.20.4-3-openssl-fips.tar.gz
|
||||||
|
/go1.20.6.tar.gz
|
||||||
|
/go1.20.6-1-openssl-fips.tar.gz
|
||||||
|
/go1.21.3-1-openssl-fips.tar.gz
|
||||||
|
/go1.21.3.tar.gz
|
||||||
|
/go1.21.7.tar.gz
|
||||||
|
/go1.21.7-1-openssl-fips.tar.gz
|
||||||
|
/go1.22.2.tar.gz
|
||||||
|
/go1.22.2-1-openssl-fips.tar.gz
|
||||||
|
/go1.22.3-1-openssl-fips.tar.gz
|
||||||
|
/go1.22.3.tar.gz
|
||||||
|
/go1.22.3-2-openssl-fips.tar.gz
|
||||||
|
/go1.22.3.src.tar.gz
|
||||||
|
/go1.22.3-3-openssl-fips.tar.gz
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
1162b641e8b23110eaab7496003585ea6c786158 SOURCES/go1.21.9-1-openssl-fips.tar.gz
|
|
||||||
54c038c82c82ebe2ad4ee2d0a3d7c4d39809f59a SOURCES/go1.21.9.tar.gz
|
|
|
@ -0,0 +1,65 @@
|
||||||
|
# Golang
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
|
||||||
|
This package holds the spec file and related patches for the Golang package.
|
||||||
|
The golang package is part of the larger go-toolset meta package.
|
||||||
|
|
||||||
|
## Sources
|
||||||
|
|
||||||
|
This particular branch provides Go 1.16.x. The sources for this branch can be
|
||||||
|
found at https://pagure.io/go/tree/go1.16-openssl-fips. The reason the source is
|
||||||
|
coming from a pagure fork as opposed to an upstream tarball is due to certain
|
||||||
|
patches we have written and currently maintain in order to claim FIPS compliance
|
||||||
|
by calling into OpenSSL. Shipping a forked version of the toolchain is not the
|
||||||
|
ideal scenario, and there is work in progress with upstream to enable us to
|
||||||
|
instead ship a pure upstream toolchain and include a crypto module in go-toolset
|
||||||
|
which will satisfy our FIPS requirements.
|
||||||
|
|
||||||
|
The current fork is based on an upstream branch[[0]] which uses
|
||||||
|
boringcrypto[[1]] instead of OpenSSL.
|
||||||
|
|
||||||
|
If you need to make changes to the source for a rebase or bug fix, check out the
|
||||||
|
pagure repo and switch to the branch listed above. Once you have made your
|
||||||
|
changes you can test them locally with `./all.bash`. You may want to export
|
||||||
|
`GOLANG_FIPS=1` before running that if you want to verify the FIPS codepaths are
|
||||||
|
correct. Please note however that the test suite does not fully expect FIPS
|
||||||
|
compliance, and will attempt to test non FIPS compliant code paths. The easiest
|
||||||
|
way to test your changes correctly is to create a tarball locally and execute a
|
||||||
|
mockbuild using this packge, which knows how to correctly run the testsuite in
|
||||||
|
both FIPS and non-FIPS modes.
|
||||||
|
|
||||||
|
NOTE: The way pagure previously handled uploaded releases has changed, and
|
||||||
|
releases must be tagged in the appropriate branch, from which pagure will
|
||||||
|
generate source tarballs.
|
||||||
|
|
||||||
|
## Testing & building changes
|
||||||
|
|
||||||
|
The first test you should run is a local mockbuild. This can be done with the
|
||||||
|
rhpkg command:
|
||||||
|
|
||||||
|
```
|
||||||
|
rhpkg mockbuild
|
||||||
|
```
|
||||||
|
|
||||||
|
Once everything builds and passes locally you'll likely want to perform a
|
||||||
|
scratch build. This will ensure that the changes you made build and run
|
||||||
|
correctly on all architectures that this package supports. The best way to do
|
||||||
|
this is to run a scratch build from your local sources without first having to
|
||||||
|
push them. This ensures your changes are correct before commiting them to the
|
||||||
|
repo. This can also be done via the following rhpkg command:
|
||||||
|
|
||||||
|
```
|
||||||
|
rhpkg scratch-build --srpm
|
||||||
|
```
|
||||||
|
|
||||||
|
Once your scratch build has passed you can execute a real build:
|
||||||
|
|
||||||
|
```
|
||||||
|
rhpkg build
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[0] https://github.com/golang/go/tree/dev.boringcrypto
|
||||||
|
[1] https://opensource.google.com/projects/boringssl
|
|
@ -1,288 +0,0 @@
|
||||||
diff --git a/src/crypto/internal/backend/nobackend.go b/src/crypto/internal/backend/nobackend.go
|
|
||||||
index 5f258a2..5dbbc42 100644
|
|
||||||
--- a/src/crypto/internal/backend/nobackend.go
|
|
||||||
+++ b/src/crypto/internal/backend/nobackend.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl
|
|
||||||
-// +build !linux !cgo android cmd_go_bootstrap msan no_openssl
|
|
||||||
+//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl || static
|
|
||||||
+// +build !linux !cgo android cmd_go_bootstrap msan no_openssl static
|
|
||||||
|
|
||||||
package backend
|
|
||||||
|
|
||||||
diff --git a/src/crypto/internal/boring/goboringcrypto.h b/src/crypto/internal/boring/goboringcrypto.h
|
|
||||||
index d6d99b1..f2fe332 100644
|
|
||||||
--- a/src/crypto/internal/boring/goboringcrypto.h
|
|
||||||
+++ b/src/crypto/internal/boring/goboringcrypto.h
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// Copyright 2017 The Go Authors. All rights reserved.
|
|
||||||
+// +build !static
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
diff --git a/src/crypto/internal/boring/syso/syso.go b/src/crypto/internal/boring/syso/syso.go
|
|
||||||
index b338754..db5ea1e 100644
|
|
||||||
--- a/src/crypto/internal/boring/syso/syso.go
|
|
||||||
+++ b/src/crypto/internal/boring/syso/syso.go
|
|
||||||
@@ -2,7 +2,7 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build boringcrypto
|
|
||||||
+//go:build boringcrypto && !static
|
|
||||||
|
|
||||||
// This package only exists with GOEXPERIMENT=boringcrypto.
|
|
||||||
// It provides the actual syso file.
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/aes.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/aes.go
|
|
||||||
index 079fc3c..e826d0b 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/aes.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/aes.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go
|
|
||||||
index 0b61e79..94d0c98 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdsa.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdsa.go
|
|
||||||
index afec529..d822152 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdsa.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdsa.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h b/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h
|
|
||||||
index 6d6a562..17cc314 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// Copyright 2017 The Go Authors. All rights reserved.
|
|
||||||
+// +build !static
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
// +build linux
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/hkdf.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/hkdf.go
|
|
||||||
index ae40b93..17bc075 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/hkdf.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/hkdf.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/hmac.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/hmac.go
|
|
||||||
index 6f00177..f466b18 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/hmac.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/hmac.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/notboring.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/notboring.go
|
|
||||||
index 7c0b5d6..262af07 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/notboring.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/notboring.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl
|
|
||||||
-// +build !linux !cgo android cmd_go_bootstrap msan no_openssl
|
|
||||||
+//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl || static
|
|
||||||
+// +build !linux !cgo android cmd_go_bootstrap msan no_openssl static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl.go
|
|
||||||
index d49194d..ff15054 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_ecdsa_signature.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_ecdsa_signature.c
|
|
||||||
index 2349db1..57fbb04 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_ecdsa_signature.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_ecdsa_signature.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// +build linux
|
|
||||||
+// +build !static
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
// +build !cmd_go_bootstrap
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c
|
|
||||||
index 4379019..5034c46 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// +build linux
|
|
||||||
+// +build !static
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
// +build !cmd_go_bootstrap
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_lock_setup.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_lock_setup.c
|
|
||||||
index 49d40a7..3b3dbf8 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_lock_setup.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_lock_setup.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// +build linux
|
|
||||||
+// +build !static
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
// +build !cmd_go_bootstrap
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_aead_gcm.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_aead_gcm.c
|
|
||||||
index 7eb645e..1c3225a 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_aead_gcm.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_aead_gcm.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// This file contains a port of the BoringSSL AEAD interface.
|
|
||||||
+// +build !static
|
|
||||||
// +build linux
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_ctr128.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_ctr128.c
|
|
||||||
index df4ebe3..876393b 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_ctr128.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_ctr128.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// +build linux
|
|
||||||
+// +build !static
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
// +build !cmd_go_bootstrap
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_evp_md5_sha1.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_evp_md5_sha1.c
|
|
||||||
index 2eedd5b..04510d3 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_evp_md5_sha1.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_evp_md5_sha1.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// This file contains a backport of the EVP_md5_sha1 method.
|
|
||||||
+// +build !static
|
|
||||||
// +build linux
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_hmac.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_hmac.c
|
|
||||||
index 362d9e5..bebafef 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_hmac.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_hmac.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// This file contains HMAC portability wrappers.
|
|
||||||
+// +build !static
|
|
||||||
// +build linux
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_rsa.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_rsa.c
|
|
||||||
index 2824147..8bc1d85 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_rsa.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_port_rsa.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// This file contains RSA portability wrappers.
|
|
||||||
+// +build !static
|
|
||||||
// +build linux
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_stub_rand.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_stub_rand.c
|
|
||||||
index 22bd865..b7aa26b 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_stub_rand.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_stub_rand.c
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
// +build linux
|
|
||||||
+// +build !static
|
|
||||||
// +build !android
|
|
||||||
// +build !no_openssl
|
|
||||||
// +build !cmd_go_bootstrap
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/rand.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/rand.go
|
|
||||||
index b3668b8..dcdae70 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/rand.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/rand.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go
|
|
||||||
index 915c840..8623d9d 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/sha.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/sha.go
|
|
||||||
index 0b55ced..57309c0 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/sha.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/sha.go
|
|
||||||
@@ -2,8 +2,8 @@
|
|
||||||
// Use of this source code is governed by a BSD-style
|
|
||||||
// license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
-//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
||||||
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
||||||
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
||||||
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
||||||
|
|
||||||
package openssl
|
|
||||||
|
|
|
@ -1,172 +0,0 @@
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go
|
|
||||||
index 56adf47bf6..9537870e3c 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/ecdh.go
|
|
||||||
@@ -22,22 +22,10 @@ var (
|
|
||||||
type PublicKeyECDH struct {
|
|
||||||
_pkey *C.GO_EVP_PKEY
|
|
||||||
bytes []byte
|
|
||||||
-
|
|
||||||
- // priv is only set when PublicKeyECDH is derived from a private key,
|
|
||||||
- // in which case priv's finalizer is responsible for freeing _pkey.
|
|
||||||
- // This ensures priv is not finalized while the public key is alive,
|
|
||||||
- // which could cause use-after-free and double-free behavior.
|
|
||||||
- //
|
|
||||||
- // We could avoid this altogether by using EVP_PKEY_up_ref
|
|
||||||
- // when instantiating a derived public key, unfortunately
|
|
||||||
- // it is not available on OpenSSL 1.0.2.
|
|
||||||
- priv *PrivateKeyECDH
|
|
||||||
}
|
|
||||||
|
|
||||||
func (k *PublicKeyECDH) finalize() {
|
|
||||||
- if k.priv == nil {
|
|
||||||
- C._goboringcrypto_EVP_PKEY_free(k._pkey)
|
|
||||||
- }
|
|
||||||
+ C._goboringcrypto_EVP_PKEY_free(k._pkey)
|
|
||||||
}
|
|
||||||
|
|
||||||
type PrivateKeyECDH struct {
|
|
||||||
@@ -58,7 +46,7 @@ func NewPublicKeyECDH(curve string, bytes []byte) (*PublicKeyECDH, error) {
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
- k := &PublicKeyECDH{pkey, append([]byte(nil), bytes...), nil}
|
|
||||||
+ k := &PublicKeyECDH{pkey, append([]byte(nil), bytes...)}
|
|
||||||
runtime.SetFinalizer(k, (*PublicKeyECDH).finalize)
|
|
||||||
return k, nil
|
|
||||||
}
|
|
||||||
@@ -87,14 +75,22 @@ func (k *PrivateKeyECDH) PublicKey() (*PublicKeyECDH, error) {
|
|
||||||
var bytes []byte
|
|
||||||
var cbytes *C.uchar
|
|
||||||
|
|
||||||
- n := C._goboringcrypto_EVP_PKEY_get1_encoded_ecdh_public_key(k._pkey, &cbytes)
|
|
||||||
+ pkey := C._goboringcrypto_EVP_PKEY_ref(k._pkey)
|
|
||||||
+ if pkey == nil {
|
|
||||||
+ return nil, NewOpenSSLError("EVP_PKEY_ref")
|
|
||||||
+ }
|
|
||||||
+ defer func() {
|
|
||||||
+ C._goboringcrypto_EVP_PKEY_free(pkey)
|
|
||||||
+ }()
|
|
||||||
+ n := C._goboringcrypto_EVP_PKEY_get1_encoded_ecdh_public_key(pkey, &cbytes)
|
|
||||||
if n == 0 {
|
|
||||||
return nil, NewOpenSSLError("EVP_PKEY_get1_encoded_ecdh_public_key")
|
|
||||||
}
|
|
||||||
bytes = C.GoBytes(unsafe.Pointer(cbytes), C.int(n))
|
|
||||||
C.free(unsafe.Pointer(cbytes))
|
|
||||||
|
|
||||||
- pub := &PublicKeyECDH{k._pkey, bytes, k}
|
|
||||||
+ pub := &PublicKeyECDH{pkey, bytes}
|
|
||||||
+ pkey = nil
|
|
||||||
runtime.SetFinalizer(pub, (*PublicKeyECDH).finalize)
|
|
||||||
return pub, nil
|
|
||||||
}
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h b/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h
|
|
||||||
index a900b3f9e7..03367d5520 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/goopenssl.h
|
|
||||||
@@ -827,6 +827,9 @@ DEFINEFUNC(GO_EVP_PKEY *, EVP_PKEY_new, (void), ())
|
|
||||||
DEFINEFUNC(void, EVP_PKEY_free, (GO_EVP_PKEY * arg0), (arg0))
|
|
||||||
DEFINEFUNC(int, EVP_PKEY_set1_RSA, (GO_EVP_PKEY * arg0, GO_RSA *arg1), (arg0, arg1))
|
|
||||||
DEFINEFUNC(int, EVP_PKEY_set1_EC_KEY, (GO_EVP_PKEY * arg0, GO_EC_KEY *arg1), (arg0, arg1))
|
|
||||||
+DEFINEFUNC(const GO_EC_KEY *, EVP_PKEY_get0_EC_KEY, (const GO_EVP_PKEY *pkey), (pkey))
|
|
||||||
+GO_EVP_PKEY *_goboringcrypto_EVP_PKEY_ref(GO_EVP_PKEY *pkey);
|
|
||||||
+
|
|
||||||
DEFINEFUNC(int, EVP_PKEY_verify,
|
|
||||||
(EVP_PKEY_CTX *ctx, const unsigned char *sig, unsigned int siglen, const unsigned char *tbs, size_t tbslen),
|
|
||||||
(ctx, sig, siglen, tbs, tbslen))
|
|
||||||
@@ -1083,15 +1086,6 @@ enum {
|
|
||||||
#if OPENSSL_VERSION_NUMBER >= 0x10100000L
|
|
||||||
DEFINEFUNC(int, EVP_PKEY_set1_encoded_public_key, (GO_EVP_PKEY *pkey, const unsigned char *pub, size_t publen), (pkey, pub, publen))
|
|
||||||
DEFINEFUNC(size_t, EVP_PKEY_get1_encoded_public_key, (GO_EVP_PKEY *pkey, unsigned char **ppub), (pkey, ppub))
|
|
||||||
-
|
|
||||||
-DEFINEFUNC(const GO_EC_KEY *, EVP_PKEY_get0_EC_KEY, (const GO_EVP_PKEY *pkey), (pkey))
|
|
||||||
-#else
|
|
||||||
-DEFINEFUNCINTERNAL(void *, EVP_PKEY_get0, (const GO_EVP_PKEY *pkey), (pkey))
|
|
||||||
-static const GO_EC_KEY *
|
|
||||||
-_goboringcrypto_EVP_PKEY_get0_EC_KEY(const GO_EVP_PKEY *pkey)
|
|
||||||
-{
|
|
||||||
- return _goboringcrypto_internal_EVP_PKEY_get0(pkey);
|
|
||||||
-}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
GO_EVP_PKEY *_goboringcrypto_EVP_PKEY_new_for_ecdh(int nid, const uint8_t *bytes, size_t len, int is_private);
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c
|
|
||||||
index 24a9615108..c6b23a984b 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/openssl_evp.c
|
|
||||||
@@ -5,6 +5,7 @@
|
|
||||||
// +build !msan
|
|
||||||
|
|
||||||
#include "goopenssl.h"
|
|
||||||
+#include <assert.h>
|
|
||||||
|
|
||||||
int _goboringcrypto_EVP_sign(EVP_MD *md, EVP_PKEY_CTX *ctx, const uint8_t *msg,
|
|
||||||
size_t msgLen, uint8_t *sig, size_t *slen,
|
|
||||||
@@ -138,3 +139,52 @@ err:
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
|
|
||||||
+DEFINEFUNCINTERNAL(int, EVP_PKEY_up_ref, (GO_EVP_PKEY *pkey), (pkey))
|
|
||||||
+
|
|
||||||
+GO_EVP_PKEY *
|
|
||||||
+_goboringcrypto_EVP_PKEY_ref(GO_EVP_PKEY *pkey)
|
|
||||||
+{
|
|
||||||
+ if (_goboringcrypto_internal_EVP_PKEY_up_ref(pkey) != 1)
|
|
||||||
+ return NULL;
|
|
||||||
+
|
|
||||||
+ return pkey;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+#else
|
|
||||||
+GO_EVP_PKEY *
|
|
||||||
+_goboringcrypto_EVP_PKEY_ref(GO_EVP_PKEY *pkey)
|
|
||||||
+{
|
|
||||||
+ GO_EVP_PKEY *result = NULL;
|
|
||||||
+
|
|
||||||
+ if (pkey->type != EVP_PKEY_EC && pkey->type != EVP_PKEY_RSA)
|
|
||||||
+ return NULL;
|
|
||||||
+
|
|
||||||
+ result = _goboringcrypto_EVP_PKEY_new();
|
|
||||||
+ if (!result)
|
|
||||||
+ goto err;
|
|
||||||
+
|
|
||||||
+ switch (pkey->type) {
|
|
||||||
+ case EVP_PKEY_EC:
|
|
||||||
+ if (_goboringcrypto_EVP_PKEY_set1_EC_KEY(result, _goboringcrypto_EVP_PKEY_get0_EC_KEY()) != 1)
|
|
||||||
+ goto err;
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case EVP_PKEY_RSA:
|
|
||||||
+ if (_goboringcrypto_EVP_PKEY_set1_RSA_KEY(result, _goboringcrypto_EVP_PKEY_get0_RSA_KEY()) != 1)
|
|
||||||
+ goto err;
|
|
||||||
+
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ default:
|
|
||||||
+ assert(0);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ return result;
|
|
||||||
+
|
|
||||||
+err:
|
|
||||||
+ _goboringcrypto_EVP_PKEY_free(result);
|
|
||||||
+ return NULL;
|
|
||||||
+}
|
|
||||||
+#endif
|
|
||||||
diff --git a/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go b/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go
|
|
||||||
index 75ba7a8a59..1e016676a0 100644
|
|
||||||
--- a/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go
|
|
||||||
+++ b/src/vendor/github.com/golang-fips/openssl-fips/openssl/rsa.go
|
|
||||||
@@ -116,7 +116,9 @@ func (k *PrivateKeyRSA) withKey(f func(*C.GO_RSA) C.int) C.int {
|
|
||||||
|
|
||||||
func setupRSA(withKey func(func(*C.GO_RSA) C.int) C.int,
|
|
||||||
padding C.int, h hash.Hash, label []byte, saltLen int, ch crypto.Hash,
|
|
||||||
- init func(*C.GO_EVP_PKEY_CTX) C.int) (pkey *C.GO_EVP_PKEY, ctx *C.GO_EVP_PKEY_CTX, err error) {
|
|
||||||
+ init func(*C.GO_EVP_PKEY_CTX) C.int) (_ *C.GO_EVP_PKEY,_ *C.GO_EVP_PKEY_CTX, err error) {
|
|
||||||
+ var pkey *C.GO_EVP_PKEY
|
|
||||||
+ var ctx *C.GO_EVP_PKEY_CTX
|
|
||||||
defer func() {
|
|
||||||
if err != nil {
|
|
||||||
if pkey != nil {
|
|
|
@ -0,0 +1,79 @@
|
||||||
|
From 24aac090069f79307aeceb8362f60a3cc5e60f7f Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||||
|
Date: Fri, 3 May 2024 17:25:19 +0200
|
||||||
|
Subject: [PATCH] disable_static_tests_part1
|
||||||
|
|
||||||
|
---
|
||||||
|
src/crypto/internal/backend/nobackend.go | 4 ++--
|
||||||
|
src/crypto/internal/backend/openssl.go | 4 ++--
|
||||||
|
src/crypto/internal/boring/goboringcrypto.h | 1 +
|
||||||
|
src/crypto/internal/boring/syso/syso.go | 2 +-
|
||||||
|
src/vendor/github.com/golang-fips/openssl/v2/goopenssl.h | 1 +
|
||||||
|
5 files changed, 7 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/crypto/internal/backend/nobackend.go b/src/crypto/internal/backend/nobackend.go
|
||||||
|
index 5b0e356dff..a2e17f7fa5 100644
|
||||||
|
--- a/src/crypto/internal/backend/nobackend.go
|
||||||
|
+++ b/src/crypto/internal/backend/nobackend.go
|
||||||
|
@@ -2,8 +2,8 @@
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
-//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl
|
||||||
|
-// +build !linux !cgo android cmd_go_bootstrap msan no_openssl
|
||||||
|
+//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl || static || static
|
||||||
|
+// +build !linux !cgo android cmd_go_bootstrap msan no_openssl static static
|
||||||
|
|
||||||
|
package backend
|
||||||
|
|
||||||
|
diff --git a/src/crypto/internal/backend/openssl.go b/src/crypto/internal/backend/openssl.go
|
||||||
|
index 3d3a9a36ee..7e32d3b0fa 100644
|
||||||
|
--- a/src/crypto/internal/backend/openssl.go
|
||||||
|
+++ b/src/crypto/internal/backend/openssl.go
|
||||||
|
@@ -2,8 +2,8 @@
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
-//go:build linux && cgo && !android && !gocrypt && !cmd_go_bootstrap && !msan && !no_openssl
|
||||||
|
-// +build linux,cgo,!android,!gocrypt,!cmd_go_bootstrap,!msan,!no_openssl
|
||||||
|
+//go:build linux && cgo && !android && !gocrypt && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
||||||
|
+// +build linux,cgo,!android,!gocrypt,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
||||||
|
|
||||||
|
// Package openssl provides access to OpenSSLCrypto implementation functions.
|
||||||
|
// Check the variable Enabled to find out whether OpenSSLCrypto is available.
|
||||||
|
diff --git a/src/crypto/internal/boring/goboringcrypto.h b/src/crypto/internal/boring/goboringcrypto.h
|
||||||
|
index 2b11049728..dec1cb2851 100644
|
||||||
|
--- a/src/crypto/internal/boring/goboringcrypto.h
|
||||||
|
+++ b/src/crypto/internal/boring/goboringcrypto.h
|
||||||
|
@@ -1,4 +1,5 @@
|
||||||
|
// Copyright 2017 The Go Authors. All rights reserved.
|
||||||
|
+// +build !static
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
diff --git a/src/crypto/internal/boring/syso/syso.go b/src/crypto/internal/boring/syso/syso.go
|
||||||
|
index b3387545e6..db5ea1e3d9 100644
|
||||||
|
--- a/src/crypto/internal/boring/syso/syso.go
|
||||||
|
+++ b/src/crypto/internal/boring/syso/syso.go
|
||||||
|
@@ -2,7 +2,7 @@
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
-//go:build boringcrypto
|
||||||
|
+//go:build boringcrypto && !static
|
||||||
|
|
||||||
|
// This package only exists with GOEXPERIMENT=boringcrypto.
|
||||||
|
// It provides the actual syso file.
|
||||||
|
diff --git a/src/vendor/github.com/golang-fips/openssl/v2/goopenssl.h b/src/vendor/github.com/golang-fips/openssl/v2/goopenssl.h
|
||||||
|
index e488bf2014..e776aa46a3 100644
|
||||||
|
--- a/src/vendor/github.com/golang-fips/openssl/v2/goopenssl.h
|
||||||
|
+++ b/src/vendor/github.com/golang-fips/openssl/v2/goopenssl.h
|
||||||
|
@@ -1,4 +1,5 @@
|
||||||
|
// This header file describes the OpenSSL ABI as built for use in Go.
|
||||||
|
+// +build !static
|
||||||
|
|
||||||
|
#include <stdlib.h> // size_t
|
||||||
|
|
||||||
|
--
|
||||||
|
2.44.0
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-9
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
|
@ -91,13 +91,13 @@
|
||||||
%global gohostarch s390x
|
%global gohostarch s390x
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global go_api 1.21
|
%global go_api 1.22
|
||||||
%global version 1.21.9
|
%global version 1.22.3
|
||||||
%global pkg_release 1
|
%global pkg_release 3
|
||||||
|
|
||||||
Name: golang
|
Name: golang
|
||||||
Version: %{version}
|
Version: %{version}
|
||||||
Release: 1%{?dist}
|
Release: 3%{?dist}
|
||||||
|
|
||||||
Summary: The Go Programming Language
|
Summary: The Go Programming Language
|
||||||
# source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain
|
# source tree includes several copies of Mark.Twain-Tom.Sawyer.txt under Public Domain
|
||||||
|
@ -139,14 +139,13 @@ Requires: diffutils
|
||||||
|
|
||||||
# Proposed patch by jcajka https://golang.org/cl/86541
|
# Proposed patch by jcajka https://golang.org/cl/86541
|
||||||
Patch221: fix_TestScript_list_std.patch
|
Patch221: fix_TestScript_list_std.patch
|
||||||
Patch229: fix-memleak-setupRSA.patch
|
|
||||||
|
|
||||||
Patch1939923: skip_test_rhbz1939923.patch
|
Patch1939923: skip_test_rhbz1939923.patch
|
||||||
|
|
||||||
Patch2: disable_static_tests_part1.patch
|
Patch2: disable_static_tests_part1.patch
|
||||||
Patch3: disable_static_tests_part2.patch
|
Patch3: disable_static_tests_part2.patch
|
||||||
Patch4: skip-test-overlong-message.patch
|
|
||||||
Patch5: modify_go.env.patch
|
Patch5: modify_go.env.patch
|
||||||
|
Patch7: skip_TestCrashDumpsAllThreads.patch
|
||||||
|
|
||||||
# Having documentation separate was broken
|
# Having documentation separate was broken
|
||||||
Obsoletes: %{name}-docs < 1.1-4
|
Obsoletes: %{name}-docs < 1.1-4
|
||||||
|
@ -243,9 +242,12 @@ Requires: %{name} = %{version}-%{release}
|
||||||
pushd ..
|
pushd ..
|
||||||
tar -xf %{SOURCE1}
|
tar -xf %{SOURCE1}
|
||||||
popd
|
popd
|
||||||
patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/000-initial-setup.patch
|
patch_dir="../go-go%{version}-%{pkg_release}-openssl-fips/patches"
|
||||||
patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/001-initial-openssl-for-fips.patch
|
# Add --no-backup-if-mismatch option to avoid creating .orig temp files
|
||||||
patch -p1 < ../go-go%{version}-%{pkg_release}-openssl-fips/patches/002-strict-fips-runtime-detection.patch
|
for p in "$patch_dir"/*.patch; do
|
||||||
|
echo "Applying $p"
|
||||||
|
patch -p1 --no-backup-if-mismatch < $p
|
||||||
|
done
|
||||||
|
|
||||||
# Configure crypto tests
|
# Configure crypto tests
|
||||||
pushd ../go-go%{version}-%{pkg_release}-openssl-fips
|
pushd ../go-go%{version}-%{pkg_release}-openssl-fips
|
||||||
|
@ -450,11 +452,12 @@ export GO_TEST_RUN=""
|
||||||
|
|
||||||
# Run tests with FIPS enabled.
|
# Run tests with FIPS enabled.
|
||||||
export GOLANG_FIPS=1
|
export GOLANG_FIPS=1
|
||||||
|
export OPENSSL_FORCE_FIPS_MODE=1
|
||||||
pushd crypto
|
pushd crypto
|
||||||
# Run all crypto tests but skip TLS, we will run FIPS specific TLS tests later
|
# Run all crypto tests but skip TLS, we will run FIPS specific TLS tests later
|
||||||
go test $(go list ./... | grep -v tls) -v
|
go test -timeout 50m $(go list ./... | grep -v tls) -v
|
||||||
# Check that signature functions have parity between boring and notboring
|
# Check that signature functions have parity between boring and notboring
|
||||||
CGO_ENABLED=0 go test $(go list ./... | grep -v tls) -v
|
CGO_ENABLED=0 go test -timeout 50m $(go list ./... | grep -v tls) -v
|
||||||
popd
|
popd
|
||||||
# Run all FIPS specific TLS tests
|
# Run all FIPS specific TLS tests
|
||||||
pushd crypto/tls
|
pushd crypto/tls
|
||||||
|
@ -518,13 +521,26 @@ cd ..
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Apr 12 2024 David Benoit <dbenoit@redhat.com> - 1.21.9-1
|
* Thu May 30 2024 Derek Parker <deparker@redhat.com> - 1.22.3-3
|
||||||
- Fix CVE-2023-45288
|
- Update openssl backend
|
||||||
- Resolves: RHEL-31915
|
- Resolves: RHEL-36102
|
||||||
|
|
||||||
* Mon Apr 1 2024 Archana Ravindar <aravinda@redhat.com> - 1.21.7-2
|
* Thu May 23 2024 Derek Parker <deparker@redhat.com> - 1.22.3-2
|
||||||
- Fix CVE-2024-1394
|
- Restore HashSign / HashVerify API
|
||||||
- Resolves RHEL-24300
|
- Resolves: RHEL-35884
|
||||||
|
|
||||||
|
* Thu May 23 2024 David Benoit <dbenoit@redhat.com> - 1.22.3-1
|
||||||
|
- Update to Go 1.22.3
|
||||||
|
- Resolves: RHEL-35884
|
||||||
|
- Resolves: RHEL-35075
|
||||||
|
- Resolves: RHEL-35632
|
||||||
|
- Resolves: RHEL-35901
|
||||||
|
|
||||||
|
* Thu May 02 2024 Alejandro Sáez <asm@redhat.com> - 1.22.2-1
|
||||||
|
- Rebase to 1.22.2
|
||||||
|
- Re-enable CGO
|
||||||
|
- Skip TestCrashDumpsAllThreads
|
||||||
|
- Resolves: RHEL-33157
|
||||||
|
|
||||||
* Tue Feb 13 2024 Alejandro Sáez <asm@redhat.com> - 1.21.7-1
|
* Tue Feb 13 2024 Alejandro Sáez <asm@redhat.com> - 1.21.7-1
|
||||||
- Rebase to Go 1.21.7
|
- Rebase to Go 1.21.7
|
|
@ -0,0 +1,30 @@
|
||||||
|
From 09ff18f22def1766faa746df87e57d5b68454246 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||||
|
Date: Tue, 5 Mar 2024 10:03:13 +0100
|
||||||
|
Subject: [PATCH] Re-enable CGO in cmd/go and cmd/pprof
|
||||||
|
|
||||||
|
---
|
||||||
|
src/cmd/dist/build.go | 7 -------
|
||||||
|
1 file changed, 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
|
||||||
|
index 32e59b446a..941abdcebd 100644
|
||||||
|
--- a/src/cmd/dist/build.go
|
||||||
|
+++ b/src/cmd/dist/build.go
|
||||||
|
@@ -1304,13 +1304,6 @@ func timelog(op, name string) {
|
||||||
|
// to switch between the host and target configurations when cross-compiling.
|
||||||
|
func toolenv() []string {
|
||||||
|
var env []string
|
||||||
|
- if !mustLinkExternal(goos, goarch, false) {
|
||||||
|
- // Unless the platform requires external linking,
|
||||||
|
- // we disable cgo to get static binaries for cmd/go and cmd/pprof,
|
||||||
|
- // so that they work on systems without the same dynamic libraries
|
||||||
|
- // as the original build system.
|
||||||
|
- env = append(env, "CGO_ENABLED=0")
|
||||||
|
- }
|
||||||
|
if isRelease || os.Getenv("GO_BUILDER_NAME") != "" {
|
||||||
|
// Add -trimpath for reproducible builds of releases.
|
||||||
|
// Include builders so that -trimpath is well-tested ahead of releases.
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
From fdcaf4e6876cfd910c3da672564be4a6e829047c Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||||
|
Date: Wed, 27 Mar 2024 17:15:48 +0100
|
||||||
|
Subject: [PATCH] Skip TestCrashDumpsAllThreads
|
||||||
|
|
||||||
|
---
|
||||||
|
src/runtime/crash_unix_test.go | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/runtime/crash_unix_test.go b/src/runtime/crash_unix_test.go
|
||||||
|
index 123a462423..a0034d6455 100644
|
||||||
|
--- a/src/runtime/crash_unix_test.go
|
||||||
|
+++ b/src/runtime/crash_unix_test.go
|
||||||
|
@@ -74,6 +74,10 @@ func TestCrashDumpsAllThreads(t *testing.T) {
|
||||||
|
t.Skip("skipping; SIGQUIT is blocked, see golang.org/issue/19196")
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if runtime.GOOS == "linux" && runtime.GOARCH == "s390x" {
|
||||||
|
+ t.Skip("skipping; frequent TestCrashDumpsAllThreads failures on linux/s390x, see golang.org/issue/64650")
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
testenv.MustHaveGoBuild(t)
|
||||||
|
|
||||||
|
if strings.Contains(os.Getenv("GOFLAGS"), "mayMoreStackPreempt") {
|
||||||
|
--
|
||||||
|
2.44.0
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
SHA512 (go1.22.3-3-openssl-fips.tar.gz) = e3bf9316e08116f0efef8034c845a62f893271ee821589e61fb8087e9ccfb15e82febd26c6a56c2c22483fac106ca36c63b9f8f0cae7cdcbd109730f5509ab04
|
||||||
|
SHA512 (go1.22.3.tar.gz) = f17e489672bf791b9631891c134b0466afce29fea68e5c148d3d3cb57519e0f2b10f3b63234ab1ab445315761c2f3d7ececf78cc8b1e2bbb43879c543058ae00
|
Loading…
Reference in New Issue