From ce5d2d30300a4eddd778829c3bcef1929bc665c0 Mon Sep 17 00:00:00 2001 From: Roy Lee Date: Thu, 29 Sep 2022 09:30:49 -0700 Subject: [PATCH 1/3] stratum: cover LBC with DCR tricks --- stratum/client.cpp | 5 +++-- stratum/client_submit.cpp | 4 ++-- stratum/coind_template.cpp | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/stratum/client.cpp b/stratum/client.cpp index 3c2bd94..bfc9c32 100644 --- a/stratum/client.cpp +++ b/stratum/client.cpp @@ -319,8 +319,9 @@ bool client_update_block(YAAMP_CLIENT *client, json_value *json_params) coind->newblock = true; coind->notreportingcounter = 0; - if (!strcmp("DCR", coind->rpcencoding)) { - usleep(300*YAAMP_MS); + if (!strcmp("DCR", coind->rpcencoding) || !strcmp("LBC", coind->rpcencoding)) + { + usleep(300 * YAAMP_MS); } block_confirm(coind->id, hash); diff --git a/stratum/client_submit.cpp b/stratum/client_submit.cpp index 054f83f..fc48ffe 100644 --- a/stratum/client_submit.cpp +++ b/stratum/client_submit.cpp @@ -281,8 +281,8 @@ static void client_do_submit(YAAMP_CLIENT *client, YAAMP_JOB *job, YAAMP_JOB_VAL target_to_diff(coin_target), target_to_diff(hash_int), hash1, submitvalues->hash_be, templ->has_segwit_txs); - if(!strcmp("DCR", coind->rpcencoding)) { - // delay between dcrd and dcrwallet + if(!strcmp("DCR", coind->rpcencoding) ||!strcmp("LBC", coind->rpcencoding)) { + // delay between dcrd/lbcd and dcrwallet/lbcwallet sleep(1); } diff --git a/stratum/coind_template.cpp b/stratum/coind_template.cpp index 7109038..c65e104 100644 --- a/stratum/coind_template.cpp +++ b/stratum/coind_template.cpp @@ -239,8 +239,8 @@ YAAMP_JOB_TEMPLATE *coind_create_template(YAAMP_COIND *coind) json_value *json = rpc_call(&coind->rpc, "getblocktemplate", params); if(!json || json_is_null(json)) { - // coind_error() reset auto_ready, and DCR gbt can fail - if (strcmp(coind->rpcencoding, "DCR") == 0) + // coind_error() reset auto_ready, and DCR/LBC gbt can fail + if (!strcmp(coind->rpcencoding, "DCR") || !strcmp(coind->rpcencoding, "LBC")) debuglog("decred getblocktemplate failed\n"); else coind_error(coind, "getblocktemplate"); From 26a976e0aecb2fe2d1ee222873cd84803f2081c0 Mon Sep 17 00:00:00 2001 From: Tzu-Jung Lee Date: Thu, 28 Jul 2022 12:06:45 -0400 Subject: [PATCH 2/3] stratum: add logs in coind_create_job() --- stratum/client.cpp | 10 ++++++++-- stratum/coind_template.cpp | 6 ++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/stratum/client.cpp b/stratum/client.cpp index bfc9c32..84f5f2e 100644 --- a/stratum/client.cpp +++ b/stratum/client.cpp @@ -304,9 +304,15 @@ bool client_update_block(YAAMP_CLIENT *client, json_value *json_params) } int coinid = json_params->u.array.values[1]->u.integer; - if(!coinid) return false; + if(!coinid) { + debuglog("client_update_block(): object_find() coin id failed\n"); + return false; + } YAAMP_COIND *coind = (YAAMP_COIND *)object_find(&g_list_coind, coinid, true); - if(!coind) return false; + if(!coind) { + debuglog("client_update_block(): can't find coind for coinid:%d\n", coinid); + return false; + } const char* hash = json_params->u.array.values[2]->u.string.ptr; diff --git a/stratum/coind_template.cpp b/stratum/coind_template.cpp index c65e104..66905d6 100644 --- a/stratum/coind_template.cpp +++ b/stratum/coind_template.cpp @@ -523,10 +523,12 @@ bool coind_create_job(YAAMP_COIND *coind, bool force) if(!templ) { CommonUnlock(&coind->mutex); -// debuglog("%s: create job template failed!\n", coind->symbol); + stratumlog("%s: create job template failed!\n", coind->symbol); return false; } + stratumlog("templ->height: %d, coind->height: %d\n", templ->height, coind->height); + YAAMP_JOB *job_last = coind->job; if( !force && job_last && job_last->templ && job_last->templ->created + 45 > time(NULL) && @@ -592,7 +594,7 @@ bool coind_create_job(YAAMP_COIND *coind, bool force) g_list_job.AddTail(coind->job); CommonUnlock(&coind->mutex); -// debuglog("coind_create_job %s %d new job %x\n", coind->name, coind->height, coind->job->id); + debuglog("coind_create_job %s %d new job %x\n", coind->name, coind->height, coind->job->id); return true; } From f3314364176c50658b635e6b0afae2648f14d185 Mon Sep 17 00:00:00 2001 From: Roy Lee Date: Wed, 12 Oct 2022 18:19:13 -0700 Subject: [PATCH 3/3] Update pool signature to /lbeypool.net/ --- stratum/coinbase.cpp | 2 +- web/images/coin-flax.png | Bin 2868 -> 3774 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/stratum/coinbase.cpp b/stratum/coinbase.cpp index 86b31eb..3e25d40 100644 --- a/stratum/coinbase.cpp +++ b/stratum/coinbase.cpp @@ -97,7 +97,7 @@ void coinbase_create(YAAMP_COIND *coind, YAAMP_JOB_TEMPLATE *templ, json_value * char script1[4*1024]; sprintf(script1, "%s%s%s08", eheight, templ->flags, etime); - char script2[32] = "7969696d7000"; // "yiimp\0" in hex ascii + char script2[32] = "2f6c627279706f6f6c2e6e65742f"; // "/lbrypool.net/" in hex ascii if(!coind->pos && !coind->isaux && templ->auxs_size) coinbase_aux(templ, script2); diff --git a/web/images/coin-flax.png b/web/images/coin-flax.png index d28eaf30e7771b18688e7bb301bdd5789f3187c3..21b6948fb41ef95b3970230f2c363d4205a255ee 100644 GIT binary patch literal 3774 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