kanoi 11 years ago
parent
commit
522a78a4fd
  1. 2
      src/ckpool.c
  2. 34
      src/stratifier.c

2
src/ckpool.c

@ -335,7 +335,7 @@ char *_json_ckdb_call(const ckpool_t *ckp, const char *idmsg, json_t *val, bool
LOGWARNING("Json dump failed in json_ckdb_call from %s %s:%d", file, func, line);
return buf;
}
ASPRINTF(&msg, "id.%s.json=%s", idmsg, dump);
ASPRINTF(&msg, "%s.id.json=%s", idmsg, dump);
if (!logged) {
char logname[512];

34
src/stratifier.c

@ -278,13 +278,19 @@ static share_t *shares;
static cklock_t share_lock;
#define ID_AUTH 0
#define ID_SHARELOG 1
#define ID_STATS 2
#define ID_WORKINFO 1
#define ID_SHARES 2
#define ID_SHAREERR 3
#define ID_POOLSTATS 4
#define ID_USERSTATS 5
static const char *ckdb_ids[] = {
"authorise",
"sharelog",
"stats"
"workinfo",
"shares",
"shareerror",
"poolstats",
"userstats"
};
static void generate_coinbase(ckpool_t *ckp, workbase_t *wb)
@ -434,8 +440,7 @@ static void send_workinfo(ckpool_t *ckp, workbase_t *wb)
sprintf(cdfield, "%lu,%lu", wb->gentime.tv_sec, wb->gentime.tv_nsec);
val = json_pack("{ss,sI,ss,ss,ss,ss,ss,ss,ss,ss,sI,so,ss,ss,ss,ss}",
"method", "workinfo",
val = json_pack("{sI,ss,ss,ss,ss,ss,ss,ss,ss,sI,so,ss,ss,ss,ss}",
"workinfoid", wb->id,
"poolinstance", ckp->name,
"transactiontree", wb->txn_hashes,
@ -451,7 +456,7 @@ static void send_workinfo(ckpool_t *ckp, workbase_t *wb)
"createby", "code",
"createcode", __func__,
"createinet", "127.0.0.1");
ckdbq_add(ID_SHARELOG, val);
ckdbq_add(ID_WORKINFO, val);
}
static void add_base(ckpool_t *ckp, workbase_t *wb, bool *new_block)
@ -1160,8 +1165,7 @@ static bool send_recv_auth(stratum_instance_t *client)
ts_realtime(&now);
sprintf(cdfield, "%lu,%lu", now.tv_sec, now.tv_nsec);
val = json_pack("{ss,ss,ss,ss,si,ss,ss,ss,ss}",
"method", "authorise",
val = json_pack("{ss,ss,ss,si,ss,ss,ss,ss}",
"username", client->user_instance->username,
"workername", client->workername,
"useragent", client->useragent,
@ -1181,7 +1185,7 @@ static bool send_recv_auth(stratum_instance_t *client)
LOGINFO("User %s Worker %s got auth response: %s suid: %s",
client->user_instance->username, client->workername,
response, secondaryuserid);
if (!strcmp(response, "added") && secondaryuserid) {
if (!strcmp(response, "ok") && secondaryuserid) {
client->secondaryuserid = strdup(secondaryuserid);
ret = true;
}
@ -1683,7 +1687,6 @@ out_unlock:
/* Now write to the pool's sharelog, adding workername to json */
sprintf(fname, "%s.sharelog", logdir);
json_set_string(val, "method", "shares");
json_set_string(val, "workername", client->workername);
json_set_string(val, "username", client->user_instance->username);
fp = fopen(fname, "a");
@ -1697,11 +1700,10 @@ out_unlock:
LOGERR("Failed to fwrite to %s", fname);
} else
LOGERR("Failed to fopen %s", fname);
ckdbq_add(ID_SHARELOG, val);
ckdbq_add(ID_SHARES, val);
out:
if (!share) {
val = json_pack("{ss,si,ss,ss,sI,ss,ss,so,si,ss,ss,ss,ss}",
"method", "shareerror",
val = json_pack("{si,ss,ss,sI,ss,ss,so,si,ss,ss,ss,ss}",
"clientid", client->id,
"secondaryuserid", client->secondaryuserid,
"enonce1", client->enonce1,
@ -1714,7 +1716,7 @@ out:
"createby", "code",
"createcode", __func__,
"createinet", "127.0.0.1");
ckdbq_add(ID_SHARELOG, val);
ckdbq_add(ID_SHAREERR, val);
LOGINFO("Invalid share from client %d: %s", client->id, client->workername);
}
return json_boolean(result);
@ -2305,7 +2307,7 @@ static void *statsupdate(void *arg)
"createby", "code",
"createcode", __func__,
"createinet", "127.0.0.1");
ckdbq_add(ID_STATS, val);
ckdbq_add(ID_POOLSTATS, val);
/* Update stats 4 times per minute for smooth values, displaying
* status every minute. */

Loading…
Cancel
Save