3 items
This commit is contained in:
@@ -336,10 +336,11 @@ UniValue NSPV_login(char *wifstr)
|
||||
|
||||
UniValue NSPV_getinfo_req(int32_t reqht)
|
||||
{
|
||||
uint8_t msg[64]; int32_t i,len = 0; struct NSPV_inforesp I;
|
||||
uint8_t msg[64]; int32_t i,iter,len = 0; struct NSPV_inforesp I;
|
||||
NSPV_inforesp_purge(&NSPV_inforesult);
|
||||
msg[len++] = NSPV_INFO;
|
||||
len += iguana_rwnum(1,&msg[len],sizeof(reqht),&reqht);
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_NSPV,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
@@ -355,7 +356,7 @@ UniValue NSPV_getinfo_req(int32_t reqht)
|
||||
|
||||
UniValue NSPV_addressutxos(char *coinaddr)
|
||||
{
|
||||
UniValue result(UniValue::VOBJ); uint8_t msg[64]; int32_t i,slen,len = 0;
|
||||
UniValue result(UniValue::VOBJ); uint8_t msg[64]; int32_t i,iter,slen,len = 0;
|
||||
//fprintf(stderr,"utxos %s NSPV addr %s\n",coinaddr,NSPV_address.c_str());
|
||||
if ( bitcoin_base58decode(msg,coinaddr) != 25 )
|
||||
{
|
||||
@@ -368,6 +369,7 @@ UniValue NSPV_addressutxos(char *coinaddr)
|
||||
msg[len++] = slen;
|
||||
memcpy(&msg[len],coinaddr,slen), len += slen;
|
||||
msg[len] = 0;
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_ADDRINDEX,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
@@ -384,11 +386,12 @@ UniValue NSPV_addressutxos(char *coinaddr)
|
||||
|
||||
UniValue NSPV_notarizations(int32_t height)
|
||||
{
|
||||
uint8_t msg[64]; int32_t i,len = 0; struct NSPV_ntzsresp N;
|
||||
uint8_t msg[64]; int32_t i,iter,len = 0; struct NSPV_ntzsresp N;
|
||||
//if ( NSPV_ntzsresult.prevntz.height <= height && NSPV_ntzsresult.nextntz.height >= height )
|
||||
// return(NSPV_ntzs_json(&NSPV_ntzsresult));
|
||||
msg[len++] = NSPV_NTZS;
|
||||
len += iguana_rwnum(1,&msg[len],sizeof(height),&height);
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_NSPV,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
@@ -404,10 +407,11 @@ UniValue NSPV_notarizations(int32_t height)
|
||||
|
||||
UniValue NSPV_txidhdrsproof(uint256 prevtxid,uint256 nexttxid)
|
||||
{
|
||||
uint8_t msg[64]; int32_t i,len = 0; struct NSPV_ntzsproofresp H;
|
||||
uint8_t msg[64]; int32_t i,iter,len = 0; struct NSPV_ntzsproofresp H;
|
||||
msg[len++] = NSPV_NTZSPROOF;
|
||||
len += iguana_rwbignum(1,&msg[len],sizeof(prevtxid),(uint8_t *)&prevtxid);
|
||||
len += iguana_rwbignum(1,&msg[len],sizeof(nexttxid),(uint8_t *)&nexttxid);
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_NSPV,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
@@ -433,7 +437,7 @@ UniValue NSPV_hdrsproof(int32_t prevht,int32_t nextht)
|
||||
|
||||
UniValue NSPV_txproof(int32_t vout,uint256 txid,int32_t height)
|
||||
{
|
||||
uint8_t msg[64]; int32_t i,len = 0; struct NSPV_txproof P;
|
||||
uint8_t msg[64]; int32_t i,iter,len = 0; struct NSPV_txproof P;
|
||||
//if ( NSPV_txproofresult.txid == txid && NSPV_txproofresult.height == height )
|
||||
// return(NSPV_txproof_json(&NSPV_txproofresult));
|
||||
msg[len++] = NSPV_TXPROOF;
|
||||
@@ -441,6 +445,7 @@ UniValue NSPV_txproof(int32_t vout,uint256 txid,int32_t height)
|
||||
len += iguana_rwnum(1,&msg[len],sizeof(vout),&vout);
|
||||
len += iguana_rwbignum(1,&msg[len],sizeof(txid),(uint8_t *)&txid);
|
||||
//fprintf(stderr,"req txproof %s/v%d at height.%d\n",txid.GetHex().c_str(),vout,height);
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_NSPV,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
@@ -450,19 +455,20 @@ UniValue NSPV_txproof(int32_t vout,uint256 txid,int32_t height)
|
||||
return(NSPV_txproof_json(&NSPV_txproofresult));
|
||||
}
|
||||
}
|
||||
fprintf(stderr,"txproof timeout\n");
|
||||
//fprintf(stderr,"txproof timeout\n");
|
||||
memset(&P,0,sizeof(P));
|
||||
return(NSPV_txproof_json(&P));
|
||||
}
|
||||
|
||||
UniValue NSPV_spentinfo(uint256 txid,int32_t vout)
|
||||
{
|
||||
uint8_t msg[64]; int32_t i,len = 0; struct NSPV_spentinfo I;
|
||||
uint8_t msg[64]; int32_t i,iter,len = 0; struct NSPV_spentinfo I;
|
||||
//if ( NSPV_spentresult.txid == txid && NSPV_spentresult.vout == vout )
|
||||
// return(NSPV_spentinfo_json(&NSPV_spentresult));
|
||||
msg[len++] = NSPV_SPENTINFO;
|
||||
len += iguana_rwnum(1,&msg[len],sizeof(vout),&vout);
|
||||
len += iguana_rwbignum(1,&msg[len],sizeof(txid),(uint8_t *)&txid);
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_SPENTINDEX,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
@@ -478,7 +484,7 @@ UniValue NSPV_spentinfo(uint256 txid,int32_t vout)
|
||||
|
||||
UniValue NSPV_broadcast(char *hex)
|
||||
{
|
||||
uint8_t *msg,*data; uint256 txid; uint16_t n; int32_t i,len = 0; struct NSPV_broadcastresp B;
|
||||
uint8_t *msg,*data; uint256 txid; uint16_t n; int32_t i,iter,len = 0; struct NSPV_broadcastresp B;
|
||||
n = (int32_t)strlen(hex) >> 1;
|
||||
data = (uint8_t *)malloc(n);
|
||||
decode_hex(data,n,hex);
|
||||
@@ -490,6 +496,7 @@ UniValue NSPV_broadcast(char *hex)
|
||||
memcpy(&msg[len],data,n), len += n;
|
||||
free(data);
|
||||
//fprintf(stderr,"send txid.%s\n",txid.GetHex().c_str());
|
||||
for (iter=0; iter<3; iter++,sleep(1));
|
||||
if ( NSPV_req(0,msg,len,NODE_NSPV,msg[0]>>1) != 0 )
|
||||
{
|
||||
for (i=0; i<NSPV_POLLITERS; i++)
|
||||
|
||||
@@ -111,7 +111,7 @@ int64_t NSPV_addinputs(struct NSPV_utxoresp *used,CMutableTransaction &mtx,int64
|
||||
remains -= up->satoshis;
|
||||
utxos[ind] = utxos[--n];
|
||||
memset(&utxos[n],0,sizeof(utxos[n]));
|
||||
fprintf(stderr,"totalinputs %.8f vs total %.8f i.%d vs max.%d\n",(double)totalinputs/COIN,(double)total/COIN,i,maxinputs);
|
||||
//fprintf(stderr,"totalinputs %.8f vs total %.8f i.%d vs max.%d\n",(double)totalinputs/COIN,(double)total/COIN,i,maxinputs);
|
||||
if ( totalinputs >= total || (i+1) >= maxinputs )
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user