Browse Source

Copy parameters from stratum work required for share submission.

Con Kolivas 13 years ago
parent
commit
aa93fa336c
2 changed files with 9 additions and 1 deletions
  1. 5 1
      cgminer.c
  2. 4 0
      miner.h

+ 5 - 1
cgminer.c

@@ -4320,7 +4320,6 @@ static void gen_stratum_work(struct pool *pool, struct work *work)
 	nonce2 = bin2hex((const unsigned char *)&pool->nonce2, pool->n2size);
 	pool->nonce2++;
 	strcat(coinbase, nonce2);
-	free(nonce2);
 	strcat(coinbase, pool->swork.coinbase2);
 
 	/* Generate merkle root */
@@ -4347,6 +4346,11 @@ static void gen_stratum_work(struct pool *pool, struct work *work)
 
 	diff = pool->swork.diff;
 
+	/* Copy parameters required for share submission */
+	work->job_id = strdup(pool->swork.job_id);
+	work->nonce2 = nonce2;
+	work->ntime = pool->swork.ntime;
+
 	mutex_unlock(&pool->pool_lock);
 
 	applog(LOG_DEBUG, "Generated stratum coinbase %s", coinbase);

+ 4 - 0
miner.h

@@ -880,7 +880,11 @@ struct work {
 	bool		mandatory;
 	bool		block;
 	bool		queued;
+
 	bool		stratum;
+	char 		*job_id;
+	char		*nonce2;
+	char		*ntime;
 
 	unsigned int	work_block;
 	int		id;