Merge #10118: Util: Remove redundant calls to argsGlobal.IsArgSet()
ed866ab Indentation after 'Remove redundant calls to gArgs.IsArgSet()' (Jorge Timón) 506b700 Util: Remove redundant calls to gArgs.IsArgSet() (Jorge Timón) Tree-SHA512: 4f97a0bf2a76c0f351a6343db62898cf057d745c848de00fa09465e870a120f28e0d836cafd6a047f4ec0da7ab671aebee43fa7410c9f0e66382edd1bb2009ba
This commit is contained in:
parent
2708a7be06
commit
e19fc0b9b2
@ -92,35 +92,32 @@ static bool multiUserAuthorized(std::string strUserPass)
|
|||||||
std::string strUser = strUserPass.substr(0, strUserPass.find(":"));
|
std::string strUser = strUserPass.substr(0, strUserPass.find(":"));
|
||||||
std::string strPass = strUserPass.substr(strUserPass.find(":") + 1);
|
std::string strPass = strUserPass.substr(strUserPass.find(":") + 1);
|
||||||
|
|
||||||
if (gArgs.IsArgSet("-rpcauth")) {
|
for (const std::string& strRPCAuth : gArgs.GetArgs("-rpcauth")) {
|
||||||
//Search for multi-user login/pass "rpcauth" from config
|
//Search for multi-user login/pass "rpcauth" from config
|
||||||
for (std::string strRPCAuth : gArgs.GetArgs("-rpcauth"))
|
std::vector<std::string> vFields;
|
||||||
{
|
boost::split(vFields, strRPCAuth, boost::is_any_of(":$"));
|
||||||
std::vector<std::string> vFields;
|
if (vFields.size() != 3) {
|
||||||
boost::split(vFields, strRPCAuth, boost::is_any_of(":$"));
|
//Incorrect formatting in config file
|
||||||
if (vFields.size() != 3) {
|
continue;
|
||||||
//Incorrect formatting in config file
|
}
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
std::string strName = vFields[0];
|
std::string strName = vFields[0];
|
||||||
if (!TimingResistantEqual(strName, strUser)) {
|
if (!TimingResistantEqual(strName, strUser)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string strSalt = vFields[1];
|
std::string strSalt = vFields[1];
|
||||||
std::string strHash = vFields[2];
|
std::string strHash = vFields[2];
|
||||||
|
|
||||||
static const unsigned int KEY_SIZE = 32;
|
static const unsigned int KEY_SIZE = 32;
|
||||||
unsigned char out[KEY_SIZE];
|
unsigned char out[KEY_SIZE];
|
||||||
|
|
||||||
CHMAC_SHA256(reinterpret_cast<const unsigned char*>(strSalt.c_str()), strSalt.size()).Write(reinterpret_cast<const unsigned char*>(strPass.c_str()), strPass.size()).Finalize(out);
|
CHMAC_SHA256(reinterpret_cast<const unsigned char*>(strSalt.c_str()), strSalt.size()).Write(reinterpret_cast<const unsigned char*>(strPass.c_str()), strPass.size()).Finalize(out);
|
||||||
std::vector<unsigned char> hexvec(out, out+KEY_SIZE);
|
std::vector<unsigned char> hexvec(out, out+KEY_SIZE);
|
||||||
std::string strHashFromPass = HexStr(hexvec);
|
std::string strHashFromPass = HexStr(hexvec);
|
||||||
|
|
||||||
if (TimingResistantEqual(strHashFromPass, strHash)) {
|
if (TimingResistantEqual(strHashFromPass, strHash)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -197,18 +197,16 @@ static bool InitHTTPAllowList()
|
|||||||
LookupHost("::1", localv6, false);
|
LookupHost("::1", localv6, false);
|
||||||
rpc_allow_subnets.push_back(CSubNet(localv4, 8)); // always allow IPv4 local subnet
|
rpc_allow_subnets.push_back(CSubNet(localv4, 8)); // always allow IPv4 local subnet
|
||||||
rpc_allow_subnets.push_back(CSubNet(localv6)); // always allow IPv6 localhost
|
rpc_allow_subnets.push_back(CSubNet(localv6)); // always allow IPv6 localhost
|
||||||
if (gArgs.IsArgSet("-rpcallowip")) {
|
for (const std::string& strAllow : gArgs.GetArgs("-rpcallowip")) {
|
||||||
for (const std::string& strAllow : gArgs.GetArgs("-rpcallowip")) {
|
CSubNet subnet;
|
||||||
CSubNet subnet;
|
LookupSubNet(strAllow.c_str(), subnet);
|
||||||
LookupSubNet(strAllow.c_str(), subnet);
|
if (!subnet.IsValid()) {
|
||||||
if (!subnet.IsValid()) {
|
uiInterface.ThreadSafeMessageBox(
|
||||||
uiInterface.ThreadSafeMessageBox(
|
strprintf("Invalid -rpcallowip subnet specification: %s. Valid are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24).", strAllow),
|
||||||
strprintf("Invalid -rpcallowip subnet specification: %s. Valid are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24).", strAllow),
|
"", CClientUIInterface::MSG_ERROR);
|
||||||
"", CClientUIInterface::MSG_ERROR);
|
return false;
|
||||||
return false;
|
|
||||||
}
|
|
||||||
rpc_allow_subnets.push_back(subnet);
|
|
||||||
}
|
}
|
||||||
|
rpc_allow_subnets.push_back(subnet);
|
||||||
}
|
}
|
||||||
std::string strAllowed;
|
std::string strAllowed;
|
||||||
for (const CSubNet& subnet : rpc_allow_subnets)
|
for (const CSubNet& subnet : rpc_allow_subnets)
|
||||||
|
87
src/init.cpp
87
src/init.cpp
@ -1105,9 +1105,7 @@ bool AppInitParameterInteraction()
|
|||||||
fAllowPrivateNet = gArgs.GetBoolArg("-allowprivatenet", DEFAULT_ALLOWPRIVATENET);
|
fAllowPrivateNet = gArgs.GetBoolArg("-allowprivatenet", DEFAULT_ALLOWPRIVATENET);
|
||||||
|
|
||||||
// -bind and -whitebind can't be set when not listening
|
// -bind and -whitebind can't be set when not listening
|
||||||
size_t nUserBind =
|
size_t nUserBind = gArgs.GetArgs("-bind").size() + gArgs.GetArgs("-whitebind").size();
|
||||||
(gArgs.IsArgSet("-bind") ? gArgs.GetArgs("-bind").size() : 0) +
|
|
||||||
(gArgs.IsArgSet("-whitebind") ? gArgs.GetArgs("-whitebind").size() : 0);
|
|
||||||
if (nUserBind != 0 && !gArgs.GetBoolArg("-listen", DEFAULT_LISTEN)) {
|
if (nUserBind != 0 && !gArgs.GetBoolArg("-listen", DEFAULT_LISTEN)) {
|
||||||
return InitError("Cannot set -bind or -whitebind together with -listen=0");
|
return InitError("Cannot set -bind or -whitebind together with -listen=0");
|
||||||
}
|
}
|
||||||
@ -1145,14 +1143,12 @@ bool AppInitParameterInteraction()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Now remove the logging categories which were explicitly excluded
|
// Now remove the logging categories which were explicitly excluded
|
||||||
if (gArgs.IsArgSet("-debugexclude")) {
|
for (const std::string& cat : gArgs.GetArgs("-debugexclude")) {
|
||||||
for (const std::string& cat : gArgs.GetArgs("-debugexclude")) {
|
uint64_t flag;
|
||||||
uint64_t flag;
|
|
||||||
if (!GetLogCategory(&flag, &cat)) {
|
if (!GetLogCategory(&flag, &cat)) {
|
||||||
InitWarning(strprintf(_("Unsupported logging category %s=%s."), "-debugexclude", cat));
|
InitWarning(strprintf(_("Unsupported logging category %s=%s."), "-debugexclude", cat));
|
||||||
}
|
|
||||||
logCategories &= ~flag;
|
|
||||||
}
|
}
|
||||||
|
logCategories &= ~flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check for -debugnet
|
// Check for -debugnet
|
||||||
@ -1569,13 +1565,10 @@ bool AppInitMain(boost::thread_group& threadGroup, CScheduler& scheduler)
|
|||||||
uacomments.push_back(strprintf("devnet=%s", GetDevNetName()));
|
uacomments.push_back(strprintf("devnet=%s", GetDevNetName()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gArgs.IsArgSet("-uacomment")) {
|
for (const std::string& cmt : gArgs.GetArgs("-uacomment")) {
|
||||||
for (std::string cmt : gArgs.GetArgs("-uacomment"))
|
if (cmt != SanitizeString(cmt, SAFE_CHARS_UA_COMMENT))
|
||||||
{
|
return InitError(strprintf(_("User Agent comment (%s) contains unsafe characters."), cmt));
|
||||||
if (cmt != SanitizeString(cmt, SAFE_CHARS_UA_COMMENT))
|
uacomments.push_back(cmt);
|
||||||
return InitError(strprintf(_("User Agent comment (%s) contains unsafe characters."), cmt));
|
|
||||||
uacomments.push_back(cmt);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
strSubVersion = FormatSubVersion(CLIENT_NAME, CLIENT_VERSION, uacomments);
|
strSubVersion = FormatSubVersion(CLIENT_NAME, CLIENT_VERSION, uacomments);
|
||||||
if (strSubVersion.size() > MAX_SUBVERSION_LENGTH) {
|
if (strSubVersion.size() > MAX_SUBVERSION_LENGTH) {
|
||||||
@ -1648,14 +1641,12 @@ bool AppInitMain(boost::thread_group& threadGroup, CScheduler& scheduler)
|
|||||||
fDiscover = gArgs.GetBoolArg("-discover", true);
|
fDiscover = gArgs.GetBoolArg("-discover", true);
|
||||||
fRelayTxes = !gArgs.GetBoolArg("-blocksonly", DEFAULT_BLOCKSONLY);
|
fRelayTxes = !gArgs.GetBoolArg("-blocksonly", DEFAULT_BLOCKSONLY);
|
||||||
|
|
||||||
if (gArgs.IsArgSet("-externalip")) {
|
for (const std::string& strAddr : gArgs.GetArgs("-externalip")) {
|
||||||
for (const std::string& strAddr : gArgs.GetArgs("-externalip")) {
|
CService addrLocal;
|
||||||
CService addrLocal;
|
if (Lookup(strAddr.c_str(), addrLocal, GetListenPort(), fNameLookup) && addrLocal.IsValid())
|
||||||
if (Lookup(strAddr.c_str(), addrLocal, GetListenPort(), fNameLookup) && addrLocal.IsValid())
|
AddLocal(addrLocal, LOCAL_MANUAL);
|
||||||
AddLocal(addrLocal, LOCAL_MANUAL);
|
else
|
||||||
else
|
return InitError(ResolveErrMsg("externalip", strAddr));
|
||||||
return InitError(ResolveErrMsg("externalip", strAddr));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if ENABLE_ZMQ
|
#if ENABLE_ZMQ
|
||||||
@ -2033,10 +2024,8 @@ bool AppInitMain(boost::thread_group& threadGroup, CScheduler& scheduler)
|
|||||||
uiInterface.NotifyBlockTip.connect(BlockNotifyCallback);
|
uiInterface.NotifyBlockTip.connect(BlockNotifyCallback);
|
||||||
|
|
||||||
std::vector<fs::path> vImportFiles;
|
std::vector<fs::path> vImportFiles;
|
||||||
if (gArgs.IsArgSet("-loadblock"))
|
for (const std::string& strFile : gArgs.GetArgs("-loadblock")) {
|
||||||
{
|
vImportFiles.push_back(strFile);
|
||||||
for (const std::string& strFile : gArgs.GetArgs("-loadblock"))
|
|
||||||
vImportFiles.push_back(strFile);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
threadGroup.create_thread(boost::bind(&ThreadImport, vImportFiles));
|
threadGroup.create_thread(boost::bind(&ThreadImport, vImportFiles));
|
||||||
@ -2078,36 +2067,30 @@ bool AppInitMain(boost::thread_group& threadGroup, CScheduler& scheduler)
|
|||||||
connOptions.nMaxOutboundTimeframe = nMaxOutboundTimeframe;
|
connOptions.nMaxOutboundTimeframe = nMaxOutboundTimeframe;
|
||||||
connOptions.nMaxOutboundLimit = nMaxOutboundLimit;
|
connOptions.nMaxOutboundLimit = nMaxOutboundLimit;
|
||||||
|
|
||||||
if (gArgs.IsArgSet("-bind")) {
|
for (const std::string& strBind : gArgs.GetArgs("-bind")) {
|
||||||
for (const std::string& strBind : gArgs.GetArgs("-bind")) {
|
CService addrBind;
|
||||||
CService addrBind;
|
if (!Lookup(strBind.c_str(), addrBind, GetListenPort(), false)) {
|
||||||
if (!Lookup(strBind.c_str(), addrBind, GetListenPort(), false)) {
|
return InitError(ResolveErrMsg("bind", strBind));
|
||||||
return InitError(ResolveErrMsg("bind", strBind));
|
|
||||||
}
|
|
||||||
connOptions.vBinds.push_back(addrBind);
|
|
||||||
}
|
}
|
||||||
|
connOptions.vBinds.push_back(addrBind);
|
||||||
}
|
}
|
||||||
if (gArgs.IsArgSet("-whitebind")) {
|
for (const std::string& strBind : gArgs.GetArgs("-whitebind")) {
|
||||||
for (const std::string& strBind : gArgs.GetArgs("-whitebind")) {
|
CService addrBind;
|
||||||
CService addrBind;
|
if (!Lookup(strBind.c_str(), addrBind, 0, false)) {
|
||||||
if (!Lookup(strBind.c_str(), addrBind, 0, false)) {
|
return InitError(ResolveErrMsg("whitebind", strBind));
|
||||||
return InitError(ResolveErrMsg("whitebind", strBind));
|
|
||||||
}
|
|
||||||
if (addrBind.GetPort() == 0) {
|
|
||||||
return InitError(strprintf(_("Need to specify a port with -whitebind: '%s'"), strBind));
|
|
||||||
}
|
|
||||||
connOptions.vWhiteBinds.push_back(addrBind);
|
|
||||||
}
|
}
|
||||||
|
if (addrBind.GetPort() == 0) {
|
||||||
|
return InitError(strprintf(_("Need to specify a port with -whitebind: '%s'"), strBind));
|
||||||
|
}
|
||||||
|
connOptions.vWhiteBinds.push_back(addrBind);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gArgs.IsArgSet("-whitelist")) {
|
for (const auto& net : gArgs.GetArgs("-whitelist")) {
|
||||||
for (const auto& net : gArgs.GetArgs("-whitelist")) {
|
CSubNet subnet;
|
||||||
CSubNet subnet;
|
LookupSubNet(net.c_str(), subnet);
|
||||||
LookupSubNet(net.c_str(), subnet);
|
if (!subnet.IsValid())
|
||||||
if (!subnet.IsValid())
|
return InitError(strprintf(_("Invalid netmask specified in -whitelist: '%s'"), net));
|
||||||
return InitError(strprintf(_("Invalid netmask specified in -whitelist: '%s'"), net));
|
connOptions.vWhitelistedRange.push_back(subnet);
|
||||||
connOptions.vWhitelistedRange.push_back(subnet);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gArgs.IsArgSet("-seednode")) {
|
if (gArgs.IsArgSet("-seednode")) {
|
||||||
|
@ -1786,7 +1786,7 @@ void CConnman::ProcessOneShot()
|
|||||||
void CConnman::ThreadOpenConnections()
|
void CConnman::ThreadOpenConnections()
|
||||||
{
|
{
|
||||||
// Connect to specific addresses
|
// Connect to specific addresses
|
||||||
if (gArgs.IsArgSet("-connect") && gArgs.GetArgs("-connect").size() > 0)
|
if (gArgs.IsArgSet("-connect"))
|
||||||
{
|
{
|
||||||
for (int64_t nLoop = 0;; nLoop++)
|
for (int64_t nLoop = 0;; nLoop++)
|
||||||
{
|
{
|
||||||
@ -2022,8 +2022,7 @@ void CConnman::ThreadOpenAddedConnections()
|
|||||||
{
|
{
|
||||||
{
|
{
|
||||||
LOCK(cs_vAddedNodes);
|
LOCK(cs_vAddedNodes);
|
||||||
if (gArgs.IsArgSet("-addnode"))
|
vAddedNodes = gArgs.GetArgs("-addnode");
|
||||||
vAddedNodes = gArgs.GetArgs("-addnode");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
while (true)
|
while (true)
|
||||||
|
@ -516,7 +516,9 @@ void ArgsManager::ParseParameters(int argc, const char* const argv[])
|
|||||||
std::vector<std::string> ArgsManager::GetArgs(const std::string& strArg)
|
std::vector<std::string> ArgsManager::GetArgs(const std::string& strArg)
|
||||||
{
|
{
|
||||||
LOCK(cs_args);
|
LOCK(cs_args);
|
||||||
return mapMultiArgs.at(strArg);
|
if (IsArgSet(strArg))
|
||||||
|
return mapMultiArgs.at(strArg);
|
||||||
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ArgsManager::IsArgSet(const std::string& strArg)
|
bool ArgsManager::IsArgSet(const std::string& strArg)
|
||||||
|
Loading…
Reference in New Issue
Block a user