Browse Source

Ensure we use int64 for internal jobid throughout and add the string to debug message from the upstream pool

master
Con Kolivas 10 years ago
parent
commit
df7d17f3a9
  1. 8
      src/generator.c
  2. 4
      src/stratifier.c

8
src/generator.c

@ -792,7 +792,7 @@ static bool parse_notify(ckpool_t *ckp, proxy_instance_t *proxi, json_t *val)
const char *prev_hash, *bbversion, *nbit, *ntime; const char *prev_hash, *bbversion, *nbit, *ntime;
proxy_instance_t *proxy = proxi->parent; proxy_instance_t *proxy = proxi->parent;
gdata_t *gdata = proxi->ckp->data; gdata_t *gdata = proxi->ckp->data;
char *coinbase1, *coinbase2; char *coinbase1, *coinbase2, *buf;
bool clean, ret = false; bool clean, ret = false;
notify_instance_t *ni; notify_instance_t *ni;
json_t *arr, *job_id; json_t *arr, *job_id;
@ -824,6 +824,8 @@ static bool parse_notify(ckpool_t *ckp, proxy_instance_t *proxi, json_t *val)
LOGDEBUG("Received new notify from proxy %d:%d", proxi->id, proxi->subid); LOGDEBUG("Received new notify from proxy %d:%d", proxi->id, proxi->subid);
ni = ckzalloc(sizeof(notify_instance_t)); ni = ckzalloc(sizeof(notify_instance_t));
ni->jobid = job_id; ni->jobid = job_id;
buf = json_string_value(job_id);
LOGDEBUG("JobID %s", buf);
ni->coinbase1 = coinbase1; ni->coinbase1 = coinbase1;
LOGDEBUG("Coinbase1 %s", coinbase1); LOGDEBUG("Coinbase1 %s", coinbase1);
ni->coinb1len = strlen(coinbase1) / 2; ni->coinb1len = strlen(coinbase1) / 2;
@ -1484,7 +1486,7 @@ static void *proxy_send(void *arg)
stratum_msg_t *msg; stratum_msg_t *msg;
bool ret = true; bool ret = true;
json_t *val; json_t *val;
int id; int64_t id;
tv_t now; tv_t now;
ts_t abs; ts_t abs;
@ -1510,7 +1512,7 @@ static void *proxy_send(void *arg)
continue; continue;
json_get_int(&subid, msg->json_msg, "subproxy"); json_get_int(&subid, msg->json_msg, "subproxy");
json_get_int(&id, msg->json_msg, "jobid"); json_get_int64(&id, msg->json_msg, "jobid");
json_get_int(&proxyid, msg->json_msg, "proxy"); json_get_int(&proxyid, msg->json_msg, "proxy");
json_get_int64(&client_id, msg->json_msg, "client_id"); json_get_int64(&client_id, msg->json_msg, "client_id");
if (unlikely(proxyid != proxy->id)) { if (unlikely(proxyid != proxy->id)) {

4
src/stratifier.c

@ -1367,7 +1367,7 @@ static void update_notify(ckpool_t *ckp, const char *cmd)
wb->ckp = ckp; wb->ckp = ckp;
wb->proxy = true; wb->proxy = true;
json_int64cpy(&wb->id, val, "jobid"); json_get_int64(&wb->id, val, "jobid");
json_strcpy(wb->prevhash, val, "prevhash"); json_strcpy(wb->prevhash, val, "prevhash");
json_intcpy(&wb->coinb1len, val, "coinb1len"); json_intcpy(&wb->coinb1len, val, "coinb1len");
wb->coinb1bin = ckalloc(wb->coinb1len); wb->coinb1bin = ckalloc(wb->coinb1len);
@ -3513,7 +3513,7 @@ static void submit_share(stratum_instance_t *client, const int64_t jobid, const
char *msg; char *msg;
sprintf(enonce2, "%s%s", client->enonce1var, nonce2); sprintf(enonce2, "%s%s", client->enonce1var, nonce2);
JSON_CPACK(json_msg, "{sisssssssIsisisi}", "jobid", jobid, "nonce2", enonce2, JSON_CPACK(json_msg, "{sIsssssssIsisisi}", "jobid", jobid, "nonce2", enonce2,
"ntime", ntime, "nonce", nonce, "client_id", client->id, "ntime", ntime, "nonce", nonce, "client_id", client->id,
"msg_id", msg_id, "proxy", client->proxyid, "msg_id", msg_id, "proxy", client->proxyid,
"subproxy", client->subproxyid); "subproxy", client->subproxyid);

Loading…
Cancel
Save