Merge branch '0.4.x' into 0.5.x

This commit is contained in:
Luke Dashjr
2016-08-13 08:26:02 +00:00
3 changed files with 14 additions and 1 deletions

7
.gitignore vendored
View File

@@ -1,3 +1,10 @@
*.gcov
*.gcda
*.gcno
vgcore*
core*
*.orig
*.rej
*~
*.so
*.o

View File

@@ -295,8 +295,9 @@ bool _blkmk_append_cb(blktemplate_t * const tmpl, void * const vout, const void
unsigned char *in = tmpl->cbtxn->data;
size_t insz = tmpl->cbtxn->datasz;
if (in[cbScriptSigLen] > libblkmaker_coinbase_size_limit - appendsz)
if (appendsz > libblkmaker_coinbase_size_limit || in[cbScriptSigLen] > libblkmaker_coinbase_size_limit - appendsz) {
return false;
}
const unsigned long pretx_size = libblkmaker_blkheader_size + blkmk_varint_encode_size(1 + tmpl->txncount);
if (pretx_size + tmpl->cbtxn->datasz + tmpl->txns_datasz + appendsz > tmpl->sizelimit) {
@@ -338,6 +339,9 @@ ssize_t blkmk_append_coinbase_safe2(blktemplate_t * const tmpl, const void * con
if (extranoncesz < sizeof(unsigned int))
extranoncesz = sizeof(unsigned int);
}
if (extranoncesz > libblkmaker_coinbase_size_limit || tmpl->cbtxn->data[cbScriptSigLen] > libblkmaker_coinbase_size_limit || extranoncesz + tmpl->cbtxn->data[cbScriptSigLen] > libblkmaker_coinbase_size_limit) {
return -5;
}
size_t availsz = libblkmaker_coinbase_size_limit - extranoncesz - tmpl->cbtxn->data[cbScriptSigLen];
{
const unsigned long pretx_size = libblkmaker_blkheader_size + blkmk_varint_encode_size(1 + tmpl->txncount);

View File

@@ -134,6 +134,8 @@ typedef struct {
blktime_diff_t maxtimeoff;
blktime_t mintime;
blktime_diff_t mintimeoff;
// Note these never were and are NOT supported, but retained merely for ABI compatibility; they will be removed without an API version bump in 0.6!
blknonce_t minnonce;
blknonce_t maxnonce;