diff options
author | Russ Cox <rsc@golang.org> | 2017-08-03 16:46:15 -0400 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2017-08-19 03:16:59 +0000 |
commit | 7e9e3a06cbeb868988fcbe478365f609b8981398 (patch) | |
tree | 551a9290516dd81d2bbf4aed438fe2a5d9b159f4 /src/crypto/internal/boring/boring.go | |
parent | bc38fda367998bf4ab4dd3b42635864dc35f3109 (diff) | |
download | go-7e9e3a06cbeb868988fcbe478365f609b8981398.tar.gz go-7e9e3a06cbeb868988fcbe478365f609b8981398.zip |
[dev.boringcrypto] crypto/rsa: use BoringCrypto
Change-Id: Ibb92f0f8cb487f4d179b069e588e1cb266599384
Reviewed-on: https://go-review.googlesource.com/55479
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Adam Langley <agl@golang.org>
Diffstat (limited to 'src/crypto/internal/boring/boring.go')
-rw-r--r-- | src/crypto/internal/boring/boring.go | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/crypto/internal/boring/boring.go b/src/crypto/internal/boring/boring.go index bf1509122d..b2d47c036f 100644 --- a/src/crypto/internal/boring/boring.go +++ b/src/crypto/internal/boring/boring.go @@ -53,3 +53,20 @@ func bnToBig(bn *C.GO_BIGNUM) *big.Int { n := C._goboringcrypto_BN_bn2bin(bn, base(raw)) return new(big.Int).SetBytes(raw[:n]) } + +func bigToBn(bnp **C.GO_BIGNUM, b *big.Int) bool { + if *bnp != nil { + C._goboringcrypto_BN_free(*bnp) + *bnp = nil + } + if b == nil { + return true + } + raw := b.Bytes() + bn := C._goboringcrypto_BN_bin2bn(base(raw), C.size_t(len(raw)), nil) + if bn == nil { + return false + } + *bnp = bn + return true +} |