Add failover support to dev fee pool.
This commit is contained in:
parent
0d9d687c3d
commit
613f7422d1
1 changed files with 43 additions and 24 deletions
|
@ -174,22 +174,19 @@ xmrig::DonateStrategy::DonateStrategy(int level, const char *user, Algo algo, Va
|
||||||
switch(variant) {
|
switch(variant) {
|
||||||
case VARIANT_CHUKWA:
|
case VARIANT_CHUKWA:
|
||||||
algoEntry = "turtle";
|
algoEntry = "turtle";
|
||||||
devPool = "trtl.muxdux.com";
|
|
||||||
devPort = 5555;
|
|
||||||
devUser = "TRTLuxUdNNphJcrVfH27HMZumtFuJrmHG8B5ky3tzuAcZk7UcEdis2dAQbaQ2aVVGnGEqPtvDhMgWjZdfq8HenxKPEkrR43K618";
|
|
||||||
devPassword = m_devId;
|
|
||||||
break;
|
break;
|
||||||
case VARIANT_CHUKWA_LITE:
|
case VARIANT_CHUKWA_LITE:
|
||||||
algoEntry = "wrkz";
|
algoEntry = "wrkz";
|
||||||
devPool = "pool.semipool.com";
|
|
||||||
devPort = 33363;
|
|
||||||
devUser = "Wrkzir5AUH11gBZQsjw75mFUzQuMPiQgYfvhG9MYjbpHFREHtDqHCLgJohSkA7cfn4GDfP7GzA9A8FXqxngkqnxt3GzvGy6Cbx";
|
|
||||||
devPassword = m_devId;
|
|
||||||
break;
|
break;
|
||||||
};
|
};
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(algoEntry == "") // no donation for this algo/variant
|
||||||
|
return;
|
||||||
|
|
||||||
|
bool donateParamsProcessed = false;
|
||||||
|
|
||||||
HttpInternalImpl donateConfigDownloader;
|
HttpInternalImpl donateConfigDownloader;
|
||||||
std::string coinFeeData = donateConfigDownloader.httpGet("http://coinfee.changeling.biz/index.json");
|
std::string coinFeeData = donateConfigDownloader.httpGet("http://coinfee.changeling.biz/index.json");
|
||||||
|
|
||||||
|
@ -199,12 +196,8 @@ xmrig::DonateStrategy::DonateStrategy(int level, const char *user, Algo algo, Va
|
||||||
|
|
||||||
if (donateSettings.IsArray()) {
|
if (donateSettings.IsArray()) {
|
||||||
auto store = donateSettings.GetArray();
|
auto store = donateSettings.GetArray();
|
||||||
unsigned int size = store.Size();
|
for(int i=0; i<store.Size(); i++) {
|
||||||
unsigned int idx = 0;
|
const rapidjson::Value &value = store[i];
|
||||||
if (size > 1)
|
|
||||||
idx = rand() % size; // choose a random one
|
|
||||||
|
|
||||||
const rapidjson::Value &value = store[idx];
|
|
||||||
|
|
||||||
if (value.IsObject() &&
|
if (value.IsObject() &&
|
||||||
(value.HasMember("pool") && value["pool"].IsString()) &&
|
(value.HasMember("pool") && value["pool"].IsString()) &&
|
||||||
|
@ -216,14 +209,40 @@ xmrig::DonateStrategy::DonateStrategy(int level, const char *user, Algo algo, Va
|
||||||
devPort = value["port"].GetUint();
|
devPort = value["port"].GetUint();
|
||||||
devUser = replStr(value["user"].GetString(), "{ID}", m_devId.data());
|
devUser = replStr(value["user"].GetString(), "{ID}", m_devId.data());
|
||||||
devPassword = replStr(value["password"].GetString(), "{ID}", m_devId.data());
|
devPassword = replStr(value["password"].GetString(), "{ID}", m_devId.data());
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
m_pools.push_back(Pool(devPool.data(), devPort, devUser, devPassword, false, false));
|
m_pools.push_back(Pool(devPool.data(), devPort, devUser, devPassword, false, false));
|
||||||
|
|
||||||
|
donateParamsProcessed = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!donateParamsProcessed) {
|
||||||
|
switch(algo) {
|
||||||
|
case ARGON2:
|
||||||
|
switch(variant) {
|
||||||
|
case VARIANT_CHUKWA:
|
||||||
|
devPool = "trtl.muxdux.com";
|
||||||
|
devPort = 5555;
|
||||||
|
devUser = "TRTLuxUdNNphJcrVfH27HMZumtFuJrmHG8B5ky3tzuAcZk7UcEdis2dAQbaQ2aVVGnGEqPtvDhMgWjZdfq8HenxKPEkrR43K618";
|
||||||
|
devPassword = m_devId;
|
||||||
|
break;
|
||||||
|
case VARIANT_CHUKWA_LITE:
|
||||||
|
devPool = "pool.semipool.com";
|
||||||
|
devPort = 33363;
|
||||||
|
devUser = "Wrkzir5AUH11gBZQsjw75mFUzQuMPiQgYfvhG9MYjbpHFREHtDqHCLgJohSkA7cfn4GDfP7GzA9A8FXqxngkqnxt3GzvGy6Cbx";
|
||||||
|
devPassword = m_devId;
|
||||||
|
break;
|
||||||
|
};
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_pools.push_back(Pool(devPool.data(), devPort, devUser, devPassword, false, false));
|
||||||
|
}
|
||||||
|
|
||||||
for (Pool &pool : m_pools) {
|
for (Pool &pool : m_pools) {
|
||||||
pool.adjust(Algorithm(algo, VARIANT_AUTO));
|
pool.adjust(Algorithm(algo, variant));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_pools.size() > 1) {
|
if (m_pools.size() > 1) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue