test
This commit is contained in:
@@ -203,8 +203,11 @@ int32_t komodo_stateupdate(uint8_t notarypubs[][33],uint8_t numnotaries)
|
|||||||
if ( func == 'P' )
|
if ( func == 'P' )
|
||||||
{
|
{
|
||||||
if ( (num= fgetc(fp)) < 64 )
|
if ( (num= fgetc(fp)) < 64 )
|
||||||
|
{
|
||||||
if ( fread(pubkeys,33,num,fp) != num )
|
if ( fread(pubkeys,33,num,fp) != num )
|
||||||
errs++;
|
errs++;
|
||||||
|
else printf("updated %d pubkeys\n",num);
|
||||||
|
}
|
||||||
else printf("illegal num.%d\n",num);
|
else printf("illegal num.%d\n",num);
|
||||||
}
|
}
|
||||||
else if ( func == 'N' )
|
else if ( func == 'N' )
|
||||||
@@ -360,7 +363,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block)
|
|||||||
{
|
{
|
||||||
static int32_t didinit;
|
static int32_t didinit;
|
||||||
char *scriptstr,*opreturnstr; uint64_t signedmask,voutmask;
|
char *scriptstr,*opreturnstr; uint64_t signedmask,voutmask;
|
||||||
uint8_t scriptbuf[4096]; uint256 kmdtxid,btctxid,txhash;
|
uint8_t scriptbuf[4096],pubkeys[64][33]; uint256 kmdtxid,btctxid,txhash;
|
||||||
int32_t i,j,k,specialtx,notarizedheight,notaryid,len,numvouts,numvins,height,txn_count,flag;
|
int32_t i,j,k,specialtx,notarizedheight,notaryid,len,numvouts,numvins,height,txn_count,flag;
|
||||||
if ( didinit == 0 )
|
if ( didinit == 0 )
|
||||||
{
|
{
|
||||||
@@ -409,6 +412,7 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block)
|
|||||||
printf("NOTARY SIGNED.%llx numvins.%d ht.%d txi.%d notaryht.%d specialtx.%d\n",(long long)signedmask,numvins,height,i,notarizedheight,specialtx);
|
printf("NOTARY SIGNED.%llx numvins.%d ht.%d txi.%d notaryht.%d specialtx.%d\n",(long long)signedmask,numvins,height,i,notarizedheight,specialtx);
|
||||||
if ( specialtx != 0 && numvouts > 2 && komodo_threshold(signedmask) > 0 )
|
if ( specialtx != 0 && numvouts > 2 && komodo_threshold(signedmask) > 0 )
|
||||||
{
|
{
|
||||||
|
memset(pubkeys,0,sizeof(pubkeys));
|
||||||
for (j=1; j<numvouts; j++)
|
for (j=1; j<numvouts; j++)
|
||||||
{
|
{
|
||||||
len = block.vtx[i].vout[j].scriptPubKey.size();
|
len = block.vtx[i].vout[j].scriptPubKey.size();
|
||||||
@@ -417,12 +421,14 @@ void komodo_connectblock(CBlockIndex *pindex,CBlock& block)
|
|||||||
memcpy(scriptbuf,block.vtx[i].vout[j].scriptPubKey.data(),len);
|
memcpy(scriptbuf,block.vtx[i].vout[j].scriptPubKey.data(),len);
|
||||||
if ( len == 35 && scriptbuf[0] == 33 && scriptbuf[34] == 0xac )
|
if ( len == 35 && scriptbuf[0] == 33 && scriptbuf[34] == 0xac )
|
||||||
{
|
{
|
||||||
|
memcpy(pubkeys[j-1],scriptbuf+1,33);
|
||||||
for (k=0; k<33; k++)
|
for (k=0; k<33; k++)
|
||||||
printf("%02x",scriptbuf[k+1]);
|
printf("%02x",scriptbuf[k+1]);
|
||||||
printf(" <- new notary.[%d]\n",j-1);
|
printf(" <- new notary.[%d]\n",j-1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
komodo_stateupdate(pubkeys,numvouts-1);
|
||||||
printf("new notaries.%d newheight.%d from height.%d\n",numvouts-1,(((height+500)/1000)+1)*1000,height);
|
printf("new notaries.%d newheight.%d from height.%d\n",numvouts-1,(((height+500)/1000)+1)*1000,height);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user