Always check SecRandomCopyBytes return value

Closes: #223
This commit is contained in:
hewigovens
2023-01-03 09:51:05 +09:00
committed by William Casarin
parent 5fd5593595
commit 8c91ce3e10

View File

@@ -446,11 +446,13 @@ func hex_encode(_ data: Data) -> String {
func random_bytes(count: Int) -> Data { func random_bytes(count: Int) -> Data {
var data = Data(count: count) var bytes = [Int8](repeating: 0, count: count)
_ = data.withUnsafeMutableBytes { mutableBytes in guard
SecRandomCopyBytes(kSecRandomDefault, count, mutableBytes.baseAddress!) SecRandomCopyBytes(kSecRandomDefault, bytes.count, &bytes) == errSecSuccess
else {
fatalError("can't copy secure random data")
} }
return data return Data(bytes: bytes, count: count)
} }
func refid_to_tag(_ ref: ReferencedId) -> [String] { func refid_to_tag(_ ref: ReferencedId) -> [String] {