mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-16 13:01:19 +02:00
kernel: SanityChecks: Return an error struct
This reduces libbitcoinkernel's coupling with ui_interface and translation.
This commit is contained in:
parent
265d6393bf
commit
d87784ac87
4 changed files with 31 additions and 12 deletions
|
|
@ -5,29 +5,26 @@
|
|||
#include <kernel/checks.h>
|
||||
|
||||
#include <key.h>
|
||||
#include <node/ui_interface.h>
|
||||
#include <random.h>
|
||||
#include <util/time.h>
|
||||
#include <util/translation.h>
|
||||
|
||||
#include <memory>
|
||||
|
||||
namespace kernel {
|
||||
|
||||
bool SanityChecks(const Context&) {
|
||||
std::optional<SanityCheckError> SanityChecks(const Context&)
|
||||
{
|
||||
if (!ECC_InitSanityCheck()) {
|
||||
return InitError(Untranslated("Elliptic curve cryptography sanity check failure. Aborting."));
|
||||
return SanityCheckError::ERROR_ECC;
|
||||
}
|
||||
|
||||
if (!Random_SanityCheck()) {
|
||||
return InitError(Untranslated("OS cryptographic RNG sanity check failure. Aborting."));
|
||||
return SanityCheckError::ERROR_RANDOM;
|
||||
}
|
||||
|
||||
if (!ChronoSanityCheck()) {
|
||||
return InitError(Untranslated("Clock epoch mismatch. Aborting."));
|
||||
return SanityCheckError::ERROR_CHRONO;
|
||||
}
|
||||
|
||||
return true;
|
||||
return std::nullopt;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue