From cd4e78f8e577cccdedf607699d64dbb0d5cc44e1 Mon Sep 17 00:00:00 2001 From: Jethro Grassie Date: Sat, 20 Jun 2020 16:49:29 -0400 Subject: [PATCH] config: fixed difficulty option --- pool.conf | 1 + src/pool.c | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/pool.conf b/pool.conf index 1eb7a4a..d86727f 100644 --- a/pool.conf +++ b/pool.conf @@ -9,6 +9,7 @@ wallet-rpc-port = 28084 rpc-timeout = 15 pool-wallet = 9y4V6rSRbXDhmoNQpCrDBQXFM25rqFBZYBq8RepazSLSBwsj5kRtuM9iCSuz3vs9KbfZhrQj1BKRxVCpyqii7pca3vJaNFs pool-start-diff = 1000 +pool-fixed-diff = 0 pool-fee = 0.01 payment-threshold = 0.33 share-mul = 2.0 diff --git a/src/pool.c b/src/pool.c index 04a59cf..f8a4ce4 100644 --- a/src/pool.c +++ b/src/pool.c @@ -142,6 +142,7 @@ typedef struct config_t uint16_t wallet_rpc_port; char pool_wallet[ADDRESS_MAX]; uint64_t pool_start_diff; + uint64_t pool_fixed_diff; double share_mul; uint32_t retarget_time; double retarget_ratio; @@ -991,6 +992,8 @@ static uint64_t client_target(client_t *client, job_t *job) { uint64_t bd = 0xFFFFFFFFFFFFFFFF; + if (config.pool_fixed_diff) + return config.pool_fixed_diff; if (job->block_template) bd = job->block_template->difficulty; double duration = difftime(time(NULL), client->connected_since); @@ -1003,6 +1006,8 @@ client_target(client_t *client, job_t *job) static bool retarget_required(client_t *client, job_t *job) { + if (config.pool_fixed_diff) + return false; return ((double)job->target / client_target(client, job) < config.retarget_ratio); } @@ -3594,6 +3599,10 @@ read_config(const char *config_file) { config.pool_start_diff = strtoumax(val, NULL, 10); } + else if (strcmp(key, "pool-fixed-diff") == 0) + { + config.pool_fixed_diff = strtoumax(val, NULL, 10); + } else if (strcmp(key, "pool-fee") == 0) { config.pool_fee = atof(val); @@ -3757,6 +3766,7 @@ static void print_config() " rpc-timeout = %u\n" " pool-wallet = %s\n" " pool-start-diff = %"PRIu64"\n" + " pool-fixed-diff = %"PRIu64"\n" " pool-fee = %.3f\n" " payment-threshold = %.2f\n" " share-mul = %.2f\n" @@ -3786,6 +3796,7 @@ static void print_config() config.rpc_timeout, config.pool_wallet, config.pool_start_diff, + config.pool_fixed_diff, config.pool_fee, config.payment_threshold, config.share_mul,