mirror of
https://github.com/GOSTSec/sgminer
synced 2025-01-23 04:54:26 +00:00
Generalise add_pool() functions since they're repeated in add_pool_details.
This commit is contained in:
parent
06023e549e
commit
d4405de704
19
cgminer.c
19
cgminer.c
@ -378,7 +378,8 @@ static void sharelog(const char*disposition, const struct work*work)
|
|||||||
applog(LOG_ERR, "sharelog fwrite error");
|
applog(LOG_ERR, "sharelog fwrite error");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void add_pool(void)
|
/* Return value is ignored if not called from add_pool_details */
|
||||||
|
static struct pool *add_pool(void)
|
||||||
{
|
{
|
||||||
struct pool *pool;
|
struct pool *pool;
|
||||||
|
|
||||||
@ -393,6 +394,8 @@ static void add_pool(void)
|
|||||||
|
|
||||||
/* Make sure the pool doesn't think we've been idle since time 0 */
|
/* Make sure the pool doesn't think we've been idle since time 0 */
|
||||||
pool->tv_idle.tv_sec = ~0UL;
|
pool->tv_idle.tv_sec = ~0UL;
|
||||||
|
|
||||||
|
return pool;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Pool variant of test and set */
|
/* Pool variant of test and set */
|
||||||
@ -4351,19 +4354,12 @@ char *curses_input(const char *query)
|
|||||||
|
|
||||||
int add_pool_details(bool live, char *url, char *user, char *pass)
|
int add_pool_details(bool live, char *url, char *user, char *pass)
|
||||||
{
|
{
|
||||||
struct pool *pool = NULL;
|
struct pool *pool;
|
||||||
|
|
||||||
if (total_pools == MAX_POOLS)
|
if (total_pools == MAX_POOLS)
|
||||||
return ADD_POOL_MAXIMUM;
|
return ADD_POOL_MAXIMUM;
|
||||||
|
|
||||||
pool = calloc(sizeof(struct pool), 1);
|
pool = add_pool();
|
||||||
if (!pool)
|
|
||||||
quit(1, "Failed to realloc pools in add_pool_details");
|
|
||||||
pool->pool_no = total_pools;
|
|
||||||
pool->prio = total_pools;
|
|
||||||
if (unlikely(pthread_mutex_init(&pool->pool_lock, NULL)))
|
|
||||||
quit (1, "Failed to pthread_mutex_init in input_pool");
|
|
||||||
INIT_LIST_HEAD(&pool->curlring);
|
|
||||||
|
|
||||||
pool->rpc_url = url;
|
pool->rpc_url = url;
|
||||||
pool->rpc_user = user;
|
pool->rpc_user = user;
|
||||||
@ -4373,14 +4369,11 @@ int add_pool_details(bool live, char *url, char *user, char *pass)
|
|||||||
quit(1, "Failed to malloc userpass");
|
quit(1, "Failed to malloc userpass");
|
||||||
sprintf(pool->rpc_userpass, "%s:%s", pool->rpc_user, pool->rpc_pass);
|
sprintf(pool->rpc_userpass, "%s:%s", pool->rpc_user, pool->rpc_pass);
|
||||||
|
|
||||||
pool->tv_idle.tv_sec = ~0UL;
|
|
||||||
|
|
||||||
/* Test the pool is not idle if we're live running, otherwise
|
/* Test the pool is not idle if we're live running, otherwise
|
||||||
* it will be tested separately */
|
* it will be tested separately */
|
||||||
pool->enabled = true;
|
pool->enabled = true;
|
||||||
if (live && !pool_active(pool, false))
|
if (live && !pool_active(pool, false))
|
||||||
pool->idle = true;
|
pool->idle = true;
|
||||||
pools[total_pools++] = pool;
|
|
||||||
|
|
||||||
return ADD_POOL_OK;
|
return ADD_POOL_OK;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user