diff options
| author | Satoshi Nakamoto <[email protected]> | 2010-08-28 00:54:37 +0000 |
|---|---|---|
| committer | Gavin Andresen <[email protected]> | 2010-08-28 00:54:37 +0000 |
| commit | 87cfcfd3741e0cd38da671db79b199fe5bfb2949 (patch) | |
| tree | 1583a826d3eaccb7c7103bf0f2ddd7e04d7bc12b | |
| parent | alert system (diff) | |
| download | discoin-87cfcfd3741e0cd38da671db79b199fe5bfb2949.tar.xz discoin-87cfcfd3741e0cd38da671db79b199fe5bfb2949.zip | |
more rpc methods allowed in safe mode
| -rw-r--r-- | rpc.cpp | 23 |
1 files changed, 21 insertions, 2 deletions
@@ -669,6 +669,25 @@ pair<string, rpcfn_type> pCallTable[] = }; map<string, rpcfn_type> mapCallTable(pCallTable, pCallTable + sizeof(pCallTable)/sizeof(pCallTable[0])); +string pAllowInSafeMode[] = +{ + "help", + "stop", + "getblockcount", + "getblocknumber", + "getconnectioncount", + "getdifficulty", + "getgenerate", + "setgenerate", + "gethashespersec", + "getinfo", + "getnewaddress", + "setlabel", + "getlabel", + "getaddressesbylabel", +}; +set<string> setAllowInSafeMode(pAllowInSafeMode, pAllowInSafeMode + sizeof(pAllowInSafeMode)/sizeof(pAllowInSafeMode[0])); + @@ -974,9 +993,9 @@ void ThreadRPCServer2(void* parg) printf("ThreadRPCServer method=%s\n", strMethod.c_str()); - // Observe lockdown + // Observe safe mode string strWarning = GetWarnings("rpc"); - if (strWarning != "" && !mapArgs.count("-overridesafety") && strMethod != "getinfo" && strMethod != "help" && strMethod != "stop" && strMethod != "getgenerate" && strMethod != "setgenerate") + if (strWarning != "" && !mapArgs.count("-overridesafety") && !setAllowInSafeMode.count(strMethod)) throw runtime_error(strWarning); // Execute |