correction
git-svn-id: https://bitcoin.svn.sourceforge.net/svnroot/bitcoin/trunk@200 1a98c847-1fd6-4fd8-948a-caf3550aa51b
This commit is contained in:
30
rpc.cpp
30
rpc.cpp
@@ -1178,6 +1178,31 @@ 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",
|
||||
"getaccountaddress",
|
||||
"setlabel",
|
||||
"getaccount",
|
||||
"getlabel", // deprecated
|
||||
"getaddressesbyaccount",
|
||||
"getaddressesbylabel", // deprecated
|
||||
"backupwallet",
|
||||
"validateaddress",
|
||||
"getwork",
|
||||
};
|
||||
set<string> setAllowInSafeMode(pAllowInSafeMode, pAllowInSafeMode + sizeof(pAllowInSafeMode)/sizeof(pAllowInSafeMode[0]));
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1615,6 +1640,11 @@ void ThreadRPCServer2(void* parg)
|
||||
if (mi == mapCallTable.end())
|
||||
throw JSONRPCError(-32601, "Method not found");
|
||||
|
||||
// Observe safe mode
|
||||
string strWarning = GetWarnings("rpc");
|
||||
if (strWarning != "" && !GetBoolArg("-disablesafemode") && !setAllowInSafeMode.count(strMethod))
|
||||
throw JSONRPCError(-2, string("Safe mode: ") + strWarning);
|
||||
|
||||
try
|
||||
{
|
||||
// Execute
|
||||
|
||||
Reference in New Issue
Block a user