|
|
@ -541,18 +541,15 @@ static int share_result(int result, const char *reason) |
|
|
|
static bool submit_upstream_work(CURL *curl, struct work *work) |
|
|
|
static bool submit_upstream_work(CURL *curl, struct work *work) |
|
|
|
{ |
|
|
|
{ |
|
|
|
json_t *val, *res, *reason; |
|
|
|
json_t *val, *res, *reason; |
|
|
|
char s[345]; |
|
|
|
char s[384]; |
|
|
|
int i; |
|
|
|
|
|
|
|
bool stale_work; |
|
|
|
bool stale_work; |
|
|
|
bool rc = false; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
pthread_mutex_lock(&g_work_lock); |
|
|
|
pthread_mutex_lock(&g_work_lock); |
|
|
|
if (strlen(work->job_id + 8)) { |
|
|
|
if (strlen(work->job_id + 8)) { |
|
|
|
/* stale if not the current job id */ |
|
|
|
/* stale if not the current job id */ |
|
|
|
stale_work = strcmp(work->job_id + 8, g_work.job_id + 8); |
|
|
|
stale_work = strcmp(work->job_id + 8, g_work.job_id + 8); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
applog_hash((uchar*)&work->data); |
|
|
|
/* fallback when no job id (compare hash) */ |
|
|
|
/* fallback if not job id (compare hash) */ |
|
|
|
|
|
|
|
stale_work = memcmp(&work->data[1], &g_work.data[1], 32); |
|
|
|
stale_work = memcmp(&work->data[1], &g_work.data[1], 32); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -624,7 +621,7 @@ static bool submit_upstream_work(CURL *curl, struct work *work) |
|
|
|
char *str = NULL; |
|
|
|
char *str = NULL; |
|
|
|
|
|
|
|
|
|
|
|
if (opt_algo != ALGO_HEAVY && opt_algo != ALGO_MJOLLNIR) { |
|
|
|
if (opt_algo != ALGO_HEAVY && opt_algo != ALGO_MJOLLNIR) { |
|
|
|
for (i = 0; i < ARRAY_SIZE(work->data); i++) |
|
|
|
for (int i = 0; i < ARRAY_SIZE(work->data); i++) |
|
|
|
le32enc(work->data + i, work->data[i]); |
|
|
|
le32enc(work->data + i, work->data[i]); |
|
|
|
} |
|
|
|
} |
|
|
|
str = bin2hex((uchar*)work->data, sizeof(work->data)); |
|
|
|
str = bin2hex((uchar*)work->data, sizeof(work->data)); |
|
|
|