diff options
author | Andrew Chow <achow101-github@achow101.com> | 2017-06-08 17:38:23 -0700 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2017-08-29 10:09:41 +0200 |
commit | ec6902d0ea2bbe75179684fc71849d5e34647a14 (patch) | |
tree | 42393f7b18521829584072668b2f2e1c1c069e00 /src/rpc/safemode.cpp | |
parent | cee4fe1d53b2e1ff91ff48bc881cb41dfba01c52 (diff) |
rpc: Push down safe mode checks
This contains most of the changes of 10563 "remove safe mode", but doesn't
remove the safe mode yet, but put an `ObserveSafeMode()` check in
individual calls with okSafeMode=false.
This cleans up the ugly "okSafeMode" flag from the dispatch tables,
which is not a concern for the RPC server.
Extra-author: Wladimir J. van der Laan <laanwj@gmail.com>
Diffstat (limited to 'src/rpc/safemode.cpp')
-rw-r--r-- | src/rpc/safemode.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/rpc/safemode.cpp b/src/rpc/safemode.cpp new file mode 100644 index 0000000000..24770ad47f --- /dev/null +++ b/src/rpc/safemode.cpp @@ -0,0 +1,14 @@ +#include "safemode.h" + +#include "rpc/protocol.h" +#include "util.h" +#include "warnings.h" + +void ObserveSafeMode() +{ + std::string warning = GetWarnings("rpc"); + if (warning != "" && !gArgs.GetBoolArg("-disablesafemode", DEFAULT_DISABLE_SAFEMODE)) { + throw JSONRPCError(RPC_FORBIDDEN_BY_SAFE_MODE, std::string("Safe mode: ") + warning); + } +} + |