Browse Source

Honour block template expiry (BIP 23 Basic Pool Extensions "expires")

Luke Dashjr 13 years ago
parent
commit
c7243397e7
2 changed files with 2 additions and 3 deletions
  1. 1 1
      libblkmaker
  2. 1 2
      miner.c

+ 1 - 1
libblkmaker

@@ -1 +1 @@
-Subproject commit 905105615fdde07d1e65ab5f40c21b557aa05c6c
+Subproject commit 3ffaa3bb62b59a48b0cf6c6b940b2f78c391f0d4

+ 1 - 2
miner.c

@@ -1464,6 +1464,7 @@ static bool work_decode(const json_t *val, struct work *work)
 			applog(LOG_ERR, "blktmpl error: %s", err);
 			applog(LOG_ERR, "blktmpl error: %s", err);
 			goto err_out;
 			goto err_out;
 		}
 		}
+		work->rolltime = blkmk_time_left(work->tmpl, time(NULL));
 		blkmk_get_data(work->tmpl, work->data, 80, time(NULL), NULL, &work->dataid);
 		blkmk_get_data(work->tmpl, work->data, 80, time(NULL), NULL, &work->dataid);
 		swap32yes(work->data, work->data, 80 / 4);
 		swap32yes(work->data, work->data, 80 / 4);
 		memcpy(&work->data[80], "\0\0\0\x80\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x80\x02\0\0", 48);
 		memcpy(&work->data[80], "\0\0\0\x80\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x80\x02\0\0", 48);
@@ -2716,8 +2717,6 @@ static inline bool should_roll(struct work *work)
 	if (work->pool != current_pool() && pool_strategy != POOL_LOADBALANCE && pool_strategy != POOL_BALANCE)
 	if (work->pool != current_pool() && pool_strategy != POOL_LOADBALANCE && pool_strategy != POOL_BALANCE)
 		return false;
 		return false;
 
 
-	// FIXME: Base this on GBT expiration time, for GBT work
-
 	if (work->rolltime > opt_scantime)
 	if (work->rolltime > opt_scantime)
 		expiry = work->rolltime;
 		expiry = work->rolltime;
 	else
 	else