diff --git a/src/proxy/splitters/donate/DonateMapper.cpp b/src/proxy/splitters/donate/DonateMapper.cpp index f503747a..b523b811 100644 --- a/src/proxy/splitters/donate/DonateMapper.cpp +++ b/src/proxy/splitters/donate/DonateMapper.cpp @@ -36,11 +36,18 @@ xmrig::DonateMapper::DonateMapper(uint64_t id, LoginEvent *event, const Pool &po m_miner(event->miner()), m_id(id) { - const rapidjson::Value &algo = event->params["algo"]; + const rapidjson::Value& algo = event->params["algo"]; if (algo.IsArray()) { - for (const rapidjson::Value &value : algo.GetArray()) { - m_algorithms.emplace_back(value.GetString()); - } + for (const rapidjson::Value &value : algo.GetArray()) { + m_algorithms.emplace_back(value.GetString()); + } + } + + const rapidjson::Value& supports = event->params["supports"]; + if (supports.IsArray()) { + for (const rapidjson::Value &value : supports.GetArray()) { + m_supports.emplace_back(value.GetString()); + } } m_miner->setRouteId(0); @@ -104,6 +111,14 @@ void xmrig::DonateMapper::onLogin(IClient *, rapidjson::Document &doc, rapidjson } params.AddMember("algo", algo, allocator); + + rapidjson::Value supports(kArrayType); + + for (const String &s : m_supports) { + supports.PushBack(s.toJSON(), allocator); + } + + params.AddMember("supports", supports, allocator); } diff --git a/src/proxy/splitters/donate/DonateMapper.h b/src/proxy/splitters/donate/DonateMapper.h index 0f42d7f0..08f922e5 100644 --- a/src/proxy/splitters/donate/DonateMapper.h +++ b/src/proxy/splitters/donate/DonateMapper.h @@ -70,6 +70,7 @@ class DonateMapper : public IClientListener IClient *m_client; Miner *m_miner; std::vector m_algorithms; + std::vector m_supports; uint64_t m_diff = 0; uint64_t m_id; }; diff --git a/src/version.h b/src/version.h index 7400b3c9..8481608c 100644 --- a/src/version.h +++ b/src/version.h @@ -22,7 +22,7 @@ #define APP_ID "xmrigcc-proxy" #define APP_NAME "xmrigcc-proxy" #define APP_DESC "XMRigCC Stratum proxy" -#define APP_VERSION "3.3.2 compatible with XMRigCC 3.3.2" +#define APP_VERSION "3.3.3 aligned with XMRigCC 3.3.3" #define APP_DOMAIN "" #define APP_SITE "" #define APP_COPYRIGHT "" @@ -30,7 +30,7 @@ #define APP_VER_MAJOR 3 #define APP_VER_MINOR 3 -#define APP_VER_PATCH 2 +#define APP_VER_PATCH 3 #ifdef _MSC_VER # if (_MSC_VER >= 1930)