1
0
mirror of https://github.com/xmrig/xmrig.git synced 2026-02-02 02:03:03 -05:00
This commit is contained in:
MoneroOcean
2020-06-10 18:14:06 -07:00
150 changed files with 12300 additions and 8764 deletions

View File

@@ -61,10 +61,17 @@ xmrig::DonateStrategy::DonateStrategy(Controller *controller, IStrategyListener
m_listener(listener)
{
static char donate_user[] = "89TxfrUmqJJcb1V124WsUzA78Xa3UYHt7Bg8RGMhXVeZYPN8cE5CZEk58Y1m23ZMLHN7wYeJ9da5n5MXharEjrm41hSnWHL";
# ifndef XMRIG_FEATURE_TLS
m_pools.emplace_back(kDonateHost, 20001, donate_user, nullptr, 0, true, true);
# ifdef XMRIG_ALGO_KAWPOW
constexpr Pool::Mode mode = Pool::MODE_AUTO_ETH;
# else
constexpr Pool::Mode mode = Pool::MODE_POOL;
# endif
m_pools.emplace_back(kDonateHost, 10001, donate_user, nullptr, 0, true);
# ifndef XMRIG_FEATURE_TLS
m_pools.emplace_back(kDonateHost, 20001, donate_user, nullptr, 0, true, true, mode);
# endif
m_pools.emplace_back(kDonateHost, 10001, donate_user, nullptr, 0, true, false, mode);
if (m_pools.size() > 1) {
m_strategy = new FailoverStrategy(m_pools, 10, 2, this, true);
@@ -244,7 +251,7 @@ xmrig::IClient *xmrig::DonateStrategy::createProxy()
const IClient *client = strategy->client();
m_tls = client->hasExtension(IClient::EXT_TLS);
Pool pool(client->pool().proxy().isValid() ? client->pool().host() : client->ip(), client->pool().port(), m_userId, client->pool().password(), 0, true, client->isTLS());
Pool pool(client->pool().proxy().isValid() ? client->pool().host() : client->ip(), client->pool().port(), m_userId, client->pool().password(), 0, true, client->isTLS(), Pool::MODE_POOL);
pool.setAlgo(client->pool().algorithm());
pool.setProxy(client->pool().proxy());
@@ -283,10 +290,10 @@ void xmrig::DonateStrategy::setAlgorithms(rapidjson::Document &doc, rapidjson::V
}
void xmrig::DonateStrategy::setJob(IClient *client, const Job &job)
void xmrig::DonateStrategy::setJob(IClient *client, const Job &job, const rapidjson::Value &params)
{
if (isActive()) {
m_listener->onJob(this, client, job);
m_listener->onJob(this, client, job, params);
}
}

View File

@@ -56,8 +56,8 @@ public:
protected:
inline bool isActive() const override { return state() == STATE_ACTIVE; }
inline IClient *client() const override { return m_proxy ? m_proxy : m_strategy->client(); }
inline void onJob(IStrategy *, IClient *client, const Job &job) override { setJob(client, job); }
inline void onJobReceived(IClient *client, const Job &job, const rapidjson::Value &) override { setJob(client, job); }
inline void onJob(IStrategy *, IClient *client, const Job &job, const rapidjson::Value &params) override { setJob(client, job, params); }
inline void onJobReceived(IClient *client, const Job &job, const rapidjson::Value &params) override { setJob(client, job, params); }
inline void onResultAccepted(IClient *client, const SubmitResult &result, const char *error) override { setResult(client, result, error); }
inline void onResultAccepted(IStrategy *, IClient *client, const SubmitResult &result, const char *error) override { setResult(client, result, error); }
inline void resume() override {}
@@ -95,7 +95,7 @@ private:
IClient *createProxy();
void idle(double min, double max);
void setAlgorithms(rapidjson::Document &doc, rapidjson::Value &params);
void setJob(IClient *client, const Job &job);
void setJob(IClient *client, const Job &job, const rapidjson::Value &params);
void setResult(IClient *client, const SubmitResult &result, const char *error);
void setState(State state);