diff options
Diffstat (limited to '.overlay')
| -rw-r--r-- | .overlay/crypto/internal/boring/notboring.go | 26 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/check/check.go | 8 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/drbg/rand.go | 33 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/ecdh/ecdh.go | 24 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/ed25519/cast.go | 9 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/fips140.go | 43 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/sha512/sha512block_amd64.go | 20 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140/sha512/sha512block_arm64.go | 20 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140deps/cpu/cpu.go | 15 | ||||
| -rw-r--r-- | .overlay/crypto/internal/fips140only/fips140only.go | 11 | ||||
| -rw-r--r-- | .overlay/crypto/rand/rand.go | 24 | ||||
| -rw-r--r-- | .overlay/overlay.json | 24 |
12 files changed, 257 insertions, 0 deletions
diff --git a/.overlay/crypto/internal/boring/notboring.go b/.overlay/crypto/internal/boring/notboring.go new file mode 100644 index 00000000..4ea6a530 --- /dev/null +++ b/.overlay/crypto/internal/boring/notboring.go @@ -0,0 +1,26 @@ +//go:build !(boringcrypto && linux && (amd64 || arm64) && !android && !msan && cgo) + +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package boring + +const available = false + +type randReader int + +const RandReader = randReader(0) + +func (randReader) Read([]byte) (int, error) { panic("") } + +type PublicKeyECDH struct{} +type PrivateKeyECDH struct{} + +func ECDH(*PrivateKeyECDH, *PublicKeyECDH) ([]byte, error) { panic("") } +func GenerateKeyECDH(string) (*PrivateKeyECDH, []byte, error) { panic("") } +func NewPrivateKeyECDH(string, []byte) (*PrivateKeyECDH, error) { panic("") } +func NewPublicKeyECDH(string, []byte) (*PublicKeyECDH, error) { panic("") } +func (*PublicKeyECDH) Bytes() []byte { panic("") } +func (*PrivateKeyECDH) PublicKey() (*PublicKeyECDH, error) { panic("") } diff --git a/.overlay/crypto/internal/fips140/check/check.go b/.overlay/crypto/internal/fips140/check/check.go new file mode 100644 index 00000000..82319e10 --- /dev/null +++ b/.overlay/crypto/internal/fips140/check/check.go @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package check + +const Verified = false diff --git a/.overlay/crypto/internal/fips140/drbg/rand.go b/.overlay/crypto/internal/fips140/drbg/rand.go new file mode 100644 index 00000000..bd500845 --- /dev/null +++ b/.overlay/crypto/internal/fips140/drbg/rand.go @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package drbg + +import ( + "crypto/internal/sysrand" + "io" +) + +func Read(b []byte) { + sysrand.Read(b) +} + +func SetTestingReader(io.Reader) { + panic("") +} + +type DefaultReader struct{} + +func (DefaultReader) defaultReader() {} + +func IsDefaultReader(r io.Reader) bool { + _, ok := r.(interface{ defaultReader() }) + return ok +} + +func ReadWithReader(r io.Reader, b []byte) error { + Read(b) + return nil +} diff --git a/.overlay/crypto/internal/fips140/ecdh/ecdh.go b/.overlay/crypto/internal/fips140/ecdh/ecdh.go new file mode 100644 index 00000000..86406e4a --- /dev/null +++ b/.overlay/crypto/internal/fips140/ecdh/ecdh.go @@ -0,0 +1,24 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package ecdh + +import "io" + +type PrivateKey struct{} +type PublicKey struct{} +type Curve struct{} + +func (*PrivateKey) Bytes() []byte { panic("") } +func (*PrivateKey) PublicKey() *PublicKey { panic("") } +func (*PublicKey) Bytes() []byte { panic("") } +func P224() *Curve { panic("") } +func P256() *Curve { panic("") } +func P384() *Curve { panic("") } +func P521() *Curve { panic("") } +func GenerateKey(*Curve, io.Reader) (*PrivateKey, error) { panic("") } +func NewPrivateKey(*Curve, []byte) (*PrivateKey, error) { panic("") } +func NewPublicKey(*Curve, []byte) (*PublicKey, error) { panic("") } +func ECDH(*Curve, *PrivateKey, *PublicKey) ([]byte, error) { panic("") } diff --git a/.overlay/crypto/internal/fips140/ed25519/cast.go b/.overlay/crypto/internal/fips140/ed25519/cast.go new file mode 100644 index 00000000..8ede70d7 --- /dev/null +++ b/.overlay/crypto/internal/fips140/ed25519/cast.go @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package ed25519 + +func fipsSelfTest() {} +func fipsPCT(*PrivateKey) {} diff --git a/.overlay/crypto/internal/fips140/fips140.go b/.overlay/crypto/internal/fips140/fips140.go new file mode 100644 index 00000000..0e98ed5d --- /dev/null +++ b/.overlay/crypto/internal/fips140/fips140.go @@ -0,0 +1,43 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package fips140 + +const ( + Enabled = false + debug = false +) + +func Supported() error { + panic("") +} + +func Name() string { + panic("") +} + +func Version() string { + panic("") +} + +func CAST(string, func() error) { + panic("") +} + +func PCT(string, func() error) { + panic("") +} + +func RecordApproved() {} + +func RecordNonApproved() {} + +func ResetServiceIndicator() { + panic("") +} + +func ServiceIndicator() bool { + panic("") +} diff --git a/.overlay/crypto/internal/fips140/sha512/sha512block_amd64.go b/.overlay/crypto/internal/fips140/sha512/sha512block_amd64.go new file mode 100644 index 00000000..6760eeb3 --- /dev/null +++ b/.overlay/crypto/internal/fips140/sha512/sha512block_amd64.go @@ -0,0 +1,20 @@ +//go:build !purego + +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package sha512 + +import "crypto/internal/fips140deps/cpu" + +//go:noescape +func blockAVX2(dig *Digest, p []byte) +func block(dig *Digest, p []byte) { + if cpu.HasSHA512AVX2() { + blockAVX2(dig, p) + } else { + blockGeneric(dig, p) + } +} diff --git a/.overlay/crypto/internal/fips140/sha512/sha512block_arm64.go b/.overlay/crypto/internal/fips140/sha512/sha512block_arm64.go new file mode 100644 index 00000000..c4af4d07 --- /dev/null +++ b/.overlay/crypto/internal/fips140/sha512/sha512block_arm64.go @@ -0,0 +1,20 @@ +//go:build !purego + +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package sha512 + +import "crypto/internal/fips140deps/cpu" + +//go:noescape +func blockSHA512(dig *Digest, p []byte) +func block(dig *Digest, p []byte) { + if cpu.HasSHA512ARM64() { + blockSHA512(dig, p) + } else { + blockGeneric(dig, p) + } +} diff --git a/.overlay/crypto/internal/fips140deps/cpu/cpu.go b/.overlay/crypto/internal/fips140deps/cpu/cpu.go new file mode 100644 index 00000000..8616d0b7 --- /dev/null +++ b/.overlay/crypto/internal/fips140deps/cpu/cpu.go @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package cpu + +import "internal/cpu" + +func HasSHA512AVX2() bool { + return cpu.X86.HasAVX && cpu.X86.HasAVX2 && cpu.X86.HasBMI2 +} +func HasSHA512ARM64() bool { + return cpu.ARM64.HasSHA512 +} diff --git a/.overlay/crypto/internal/fips140only/fips140only.go b/.overlay/crypto/internal/fips140only/fips140only.go new file mode 100644 index 00000000..0027fa1e --- /dev/null +++ b/.overlay/crypto/internal/fips140only/fips140only.go @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package fips140only + +import "hash" + +func Enforced() bool { return false } +func ApprovedHash(hash.Hash) bool { panic("") } diff --git a/.overlay/crypto/rand/rand.go b/.overlay/crypto/rand/rand.go new file mode 100644 index 00000000..03d083ad --- /dev/null +++ b/.overlay/crypto/rand/rand.go @@ -0,0 +1,24 @@ +/* SPDX-License-Identifier: MIT + * + * Copyright (C) 2019-2026 WireGuard LLC. All Rights Reserved. + */ + +package rand + +import ( + "crypto/internal/sysrand" + "io" +) + +func Read(b []byte) (n int, err error) { + sysrand.Read(b) // Should panic on failure or short read + return len(b), nil +} + +type reader struct{} + +func (r reader) Read(b []byte) (n int, err error) { + return Read(b) +} + +var Reader io.Reader = reader{} diff --git a/.overlay/overlay.json b/.overlay/overlay.json new file mode 100644 index 00000000..bf24ad63 --- /dev/null +++ b/.overlay/overlay.json @@ -0,0 +1,24 @@ +{ + "Replace": { + ".deps/go/src/crypto/internal/boring/notboring.go": ".overlay/crypto/internal/boring/notboring.go", + ".deps/go/src/crypto/internal/fips140/cast.go": "", + ".deps/go/src/crypto/internal/fips140/check/check.go": ".overlay/crypto/internal/fips140/check/check.go", + ".deps/go/src/crypto/internal/fips140/drbg/cast.go": "", + ".deps/go/src/crypto/internal/fips140/drbg/ctrdrbg.go": "", + ".deps/go/src/crypto/internal/fips140/drbg/entropy_fips140.go": "", + ".deps/go/src/crypto/internal/fips140/drbg/entropy_wasm.go": "", + ".deps/go/src/crypto/internal/fips140/drbg/rand.go": ".overlay/crypto/internal/fips140/drbg/rand.go", + ".deps/go/src/crypto/internal/fips140/ecdh/cast.go": "", + ".deps/go/src/crypto/internal/fips140/ecdh/ecdh.go": ".overlay/crypto/internal/fips140/ecdh/ecdh.go", + ".deps/go/src/crypto/internal/fips140/ed25519/cast.go": ".overlay/crypto/internal/fips140/ed25519/cast.go", + ".deps/go/src/crypto/internal/fips140/fips140.go": ".overlay/crypto/internal/fips140/fips140.go", + ".deps/go/src/crypto/internal/fips140/indicator.go": "", + ".deps/go/src/crypto/internal/fips140/sha512/cast.go": "", + ".deps/go/src/crypto/internal/fips140/sha512/sha512block_amd64.go": ".overlay/crypto/internal/fips140/sha512/sha512block_amd64.go", + ".deps/go/src/crypto/internal/fips140/sha512/sha512block_arm64.go": ".overlay/crypto/internal/fips140/sha512/sha512block_arm64.go", + ".deps/go/src/crypto/internal/fips140deps/cpu/cpu.go": ".overlay/crypto/internal/fips140deps/cpu/cpu.go", + ".deps/go/src/crypto/internal/fips140only/fips140only.go": ".overlay/crypto/internal/fips140only/fips140only.go", + ".deps/go/src/crypto/rand/rand.go": ".overlay/crypto/rand/rand.go", + ".deps/go/src/crypto/rand/util.go": "" + } +} |
