From d3a0e0dc2b2df6228d2a3ddbd4defe5b170401a7 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 13:03:45 +0200 Subject: [PATCH 01/11] Test --- basilisk/basilisk.h | 5 +- basilisk/basilisk_swap.c | 136 ++++++++++++++++++++++++----------- basilisk/basilisk_tradebot.c | 4 +- 3 files changed, 98 insertions(+), 47 deletions(-) diff --git a/basilisk/basilisk.h b/basilisk/basilisk.h index a7bb6be4d..c25f11236 100755 --- a/basilisk/basilisk.h +++ b/basilisk/basilisk.h @@ -46,7 +46,7 @@ struct basilisk_swap; struct basilisk_rawtxinfo { - char destaddr[64]; + char destaddr[64],coinstr[16]; bits256 txid,signedtxid,actualtxid; uint64_t amount,change,inputsum; int32_t redeemlen,datalen,completed,vintype,vouttype,numconfirms,spendlen,secretstart,suppress_pubkeys; @@ -60,8 +60,9 @@ struct basilisk_rawtx struct iguana_msgtx msgtx; struct basilisk_rawtxinfo I; struct iguana_info *coin; + char vinstr[4096]; cJSON *vins; - uint8_t *txbytes,spendscript[512],redeemscript[1024],extraspace[1024]; + uint8_t txbytes[8192],spendscript[512],redeemscript[1024],extraspace[1024]; }; struct basilisk_swapinfo diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index 18e41e56f..0bf525368 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -382,8 +382,9 @@ int32_t _basilisk_rawtx_sign(struct supernet_info *myinfo,int32_t height,uint32_ if ( signedtx != 0 || (signedtx= iguana_signrawtx(myinfo,rawtx->coin,height,&dest->I.signedtxid,&dest->I.completed,vins,rawtxbytes,privkeys,V)) != 0 ) { dest->I.datalen = (int32_t)strlen(signedtx) >> 1; - dest->txbytes = calloc(1,dest->I.datalen); - decode_hex(dest->txbytes,dest->I.datalen,signedtx); + if ( dest->I.datalen <= sizeof(dest->txbytes) ) + decode_hex(dest->txbytes,dest->I.datalen,signedtx); + else printf("DEX tx is too big %d vs %d\n",dest->I.datalen,(int32_t)sizeof(dest->txbytes)); if ( signedtx != rawtxbytes ) free(signedtx); if ( dest->I.completed != 0 ) @@ -477,7 +478,7 @@ int32_t basilisk_rawtx_return(struct supernet_info *myinfo,int32_t height,struct } } rawtx->I.datalen = (int32_t)strlen(signedtx) >> 1; - rawtx->txbytes = calloc(1,rawtx->I.datalen); + //rawtx->txbytes = calloc(1,rawtx->I.datalen); decode_hex(rawtx->txbytes,rawtx->I.datalen,signedtx); printf("%s SIGNEDTX.(%s)\n",rawtx->name,signedtx); free(signedtx); @@ -490,7 +491,7 @@ int32_t basilisk_rawtx_return(struct supernet_info *myinfo,int32_t height,struct int32_t basilisk_rawtx_gen(char *str,struct supernet_info *myinfo,uint32_t swapstarted,uint8_t *pubkey33,int32_t iambob,int32_t lockinputs,struct basilisk_rawtx *rawtx,uint32_t locktime,uint8_t *script,int32_t scriptlen,int64_t txfee,int32_t minconf,int32_t delay) { - char *retstr,scriptstr[1024],coinaddr[64]; uint32_t basilisktag; int32_t flag,i,n,retval = -1; cJSON *addresses,*valsobj,*retarray=0; struct vin_info *V; + char *retstr,*jsonstr,scriptstr[1024],coinaddr[64]; uint32_t basilisktag; int32_t flag,i,n,retval = -1; cJSON *addresses,*valsobj,*retarray=0; struct vin_info *V; //bitcoin_address(coinaddr,rawtx->coin->chain->pubtype,myinfo->persistent_pubkey33,33); if ( rawtx->coin->changeaddr[0] == 0 ) { @@ -531,7 +532,10 @@ int32_t basilisk_rawtx_gen(char *str,struct supernet_info *myinfo,uint32_t swaps { if ( (retval= basilisk_rawtx_return(myinfo,rawtx->coin->longestchain,rawtx,jitem(retarray,i),lockinputs,V)) == 0 ) { - rawtx->vins = jobj(jitem(retarray,i),"vins"); + rawtx->vins = jduplicate(jobj(jitem(retarray,i),"vins")); + jsonstr = jprint(rawtx->vins,0); + safecopy(rawtx->vinstr,jsonstr,sizeof(rawtx->vinstr)); + free(jsonstr); break; } } @@ -539,7 +543,10 @@ int32_t basilisk_rawtx_gen(char *str,struct supernet_info *myinfo,uint32_t swaps else { retval = basilisk_rawtx_return(myinfo,rawtx->coin->longestchain,rawtx,retarray,lockinputs,V); - rawtx->vins = jobj(retarray,"vins"); + rawtx->vins = jduplicate(jobj(retarray,"vins")); + jsonstr = jprint(rawtx->vins,0); + safecopy(rawtx->vinstr,jsonstr,sizeof(rawtx->vinstr)); + free(jsonstr); } free(retarray); } else printf("error parsing.(%s)\n",retstr); @@ -552,7 +559,7 @@ int32_t basilisk_rawtx_gen(char *str,struct supernet_info *myinfo,uint32_t swaps struct basilisk_rawtx *basilisk_swapdata_rawtx(struct supernet_info *myinfo,struct basilisk_swap *swap,uint8_t *data,int32_t maxlen,struct basilisk_rawtx *rawtx) { - if ( rawtx->txbytes != 0 && rawtx->I.datalen <= maxlen ) + if ( rawtx->I.datalen != 0 && rawtx->I.datalen <= maxlen ) { memcpy(data,rawtx->txbytes,rawtx->I.datalen); return(rawtx); @@ -564,8 +571,9 @@ int32_t basilisk_verify_otherfee(struct supernet_info *myinfo,void *ptr,uint8_t { struct basilisk_swap *swap = ptr; // add verification and broadcast - swap->otherfee.txbytes = calloc(1,datalen); + //swap->otherfee.txbytes = calloc(1,datalen); memcpy(swap->otherfee.txbytes,data,datalen); + swap->otherfee.I.datalen = datalen; swap->otherfee.I.actualtxid = swap->otherfee.I.signedtxid = bits256_doublesha256(0,data,datalen); basilisk_txlog(myinfo,swap,&swap->otherfee,-1); return(0); @@ -583,9 +591,9 @@ int32_t basilisk_rawtx_spendscript(struct basilisk_swap *swap,int32_t height,str if ( rawtx->I.redeemlen > 0 && rawtx->I.redeemlen < 0x100 ) memcpy(rawtx->redeemscript,&data[datalen],rawtx->I.redeemlen); //printf("recvlen.%d datalen.%d redeemlen.%d\n",recvlen,datalen,rawtx->redeemlen); - if ( rawtx->txbytes == 0 ) + if ( rawtx->I.datalen == 0 ) { - rawtx->txbytes = calloc(1,datalen); + //rawtx->txbytes = calloc(1,datalen); memcpy(rawtx->txbytes,data,datalen); rawtx->I.datalen = datalen; } @@ -891,14 +899,14 @@ int32_t basilisk_bobscripts_set(struct supernet_info *myinfo,struct basilisk_swa //for (i=0; ibobpayment.redeemlen; i++) // printf("%02x",swap->bobpayment.redeemscript[i]); //printf(" <- bobpayment.%d\n",i); - if ( genflag != 0 && bits256_nonz(*(bits256 *)swap->I.secretBn256) != 0 && swap->bobpayment.txbytes == 0 ) + if ( genflag != 0 && bits256_nonz(*(bits256 *)swap->I.secretBn256) != 0 && swap->bobpayment.I.datalen == 0 ) { for (i=0; i<3; i++) { //if ( swap->bobpayment.txbytes != 0 && swap->bobpayment.I.spendlen != 0 ) // break; basilisk_rawtx_gen("payment",myinfo,swap->I.started,swap->persistent_pubkey33,1,1,&swap->bobpayment,swap->bobpayment.I.locktime,swap->bobpayment.spendscript,swap->bobpayment.I.spendlen,swap->bobpayment.coin->chain->txfee,1,0); - if ( swap->bobpayment.txbytes == 0 || swap->bobpayment.I.spendlen == 0 ) + if ( swap->bobpayment.I.spendlen == 0 || swap->bobpayment.I.datalen == 0 ) { printf("error bob generating %p payment.%d\n",swap->bobpayment.txbytes,swap->bobpayment.I.spendlen); sleep(DEX_SLEEP); @@ -924,14 +932,14 @@ int32_t basilisk_bobscripts_set(struct supernet_info *myinfo,struct basilisk_swa else { swap->bobdeposit.I.spendlen = basilisk_bobscript(swap->bobdeposit.I.rmd160,swap->bobdeposit.redeemscript,&swap->bobdeposit.I.redeemlen,swap->bobdeposit.spendscript,0,&swap->bobdeposit.I.locktime,&swap->bobdeposit.I.secretstart,&swap->I,1); - if ( genflag != 0 && (swap->bobdeposit.txbytes == 0 || swap->bobrefund.txbytes == 0) ) + if ( genflag != 0 && (swap->bobdeposit.I.datalen == 0 || swap->bobrefund.I.datalen == 0) ) { for (i=0; i<3; i++) { //if ( swap->bobdeposit.txbytes != 0 && swap->bobdeposit.I.spendlen != 0 ) // break; basilisk_rawtx_gen("deposit",myinfo,swap->I.started,swap->persistent_pubkey33,1,1,&swap->bobdeposit,swap->bobdeposit.I.locktime,swap->bobdeposit.spendscript,swap->bobdeposit.I.spendlen,swap->bobdeposit.coin->chain->txfee,1,0); - if ( swap->bobdeposit.txbytes == 0 || swap->bobdeposit.I.spendlen == 0 ) + if ( swap->bobdeposit.I.datalen == 0 || swap->bobdeposit.I.spendlen == 0 ) { printf("error bob generating %p deposit.%d\n",swap->bobdeposit.txbytes,swap->bobdeposit.I.spendlen); sleep(DEX_SLEEP); @@ -1220,7 +1228,7 @@ int32_t basilisk_privBn_extract(struct supernet_info *myinfo,struct basilisk_swa } if ( basilisk_swapget(myinfo,swap,0x40000000,data,maxlen,basilisk_verify_privi) == 0 ) { - if ( bits256_nonz(swap->I.privBn) != 0 && swap->alicereclaim.txbytes == 0 ) + if ( bits256_nonz(swap->I.privBn) != 0 && swap->alicereclaim.I.datalen == 0 ) { char str[65]; printf("have privBn.%s\n",bits256_str(str,swap->I.privBn)); return(basilisk_alicepayment_spend(myinfo,swap,&swap->alicereclaim)); @@ -1235,7 +1243,7 @@ int32_t basilisk_privAm_extract(struct supernet_info *myinfo,struct basilisk_swa { } - if ( bits256_nonz(swap->I.privAm) != 0 && swap->bobspend.txbytes == 0 ) + if ( bits256_nonz(swap->I.privAm) != 0 && swap->bobspend.I.datalen == 0 ) { char str[65]; printf("have privAm.%s\n",bits256_str(str,swap->I.privAm)); return(basilisk_alicepayment_spend(myinfo,swap,&swap->bobspend)); @@ -1312,6 +1320,7 @@ void basilisk_rawtx_setparms(char *name,uint32_t quoteid,struct basilisk_rawtx * { strcpy(rawtx->name,name); rawtx->coin = coin; + strcpy(rawtx->I.coinstr,coin->symbol); rawtx->I.numconfirms = numconfirms; if ( (rawtx->I.amount= satoshis) < 10000 ) rawtx->I.amount = 10000; @@ -1367,6 +1376,48 @@ int32_t bitcoin_coinptrs(bits256 pubkey,struct iguana_info **bobcoinp,struct igu return(0); } +void basilisk_swap_saveupdate(struct supernet_info *myinfo,struct basilisk_swap *swap) +{ + FILE *fp; char fname[512]; + sprintf(fname,"%s/SWAPS/%u-%u.swap",GLOBAL_DBDIR,swap->I.req.requestid,swap->I.req.quoteid); + if ( (fp= fopen(fname,"wb")) != 0 ) + { + fwrite(&swap->I,1,sizeof(swap->I),fp); + fwrite(&swap->bobdeposit,1,sizeof(swap->bobdeposit),fp); + fwrite(&swap->bobpayment,1,sizeof(swap->bobpayment),fp); + fwrite(&swap->alicepayment,1,sizeof(swap->alicepayment),fp); + fwrite(&swap->myfee,1,sizeof(swap->myfee),fp); + fwrite(&swap->otherfee,1,sizeof(swap->otherfee),fp); + fwrite(&swap->aliceclaim,1,sizeof(swap->aliceclaim),fp); + fwrite(&swap->alicespend,1,sizeof(swap->alicespend),fp); + fwrite(&swap->bobreclaim,1,sizeof(swap->bobreclaim),fp); + fwrite(&swap->bobspend,1,sizeof(swap->bobspend),fp); + fwrite(&swap->bobrefund,1,sizeof(swap->bobrefund),fp); + fwrite(&swap->alicereclaim,1,sizeof(swap->alicereclaim),fp); + fwrite(swap->privkeys,1,sizeof(swap->privkeys),fp); + fwrite(swap->otherdeck,1,sizeof(swap->otherdeck),fp); + fwrite(swap->deck,1,sizeof(swap->deck),fp); + fclose(fp); + } +} + +int32_t basilisk_swap_loadtx(struct basilisk_rawtx *rawtx,FILE *fp,char *bobcoinstr,char *alicecoinstr) +{ + if ( fread(rawtx,1,sizeof(*rawtx),fp) == sizeof(*rawtx) ) + { + rawtx->coin = 0; + rawtx->vins = 0; + if ( strcmp(rawtx->I.coinstr,bobcoinstr) == 0 || strcmp(rawtx->I.coinstr,alicecoinstr) == 0 ) + { + rawtx->coin = iguana_coinfind(rawtx->I.coinstr); + if ( rawtx->vinstr[0] != 0 ) + rawtx->vins = cJSON_Parse(rawtx->vinstr); + return(0); + } + } + return(-1); +} + struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 privkey,uint8_t *pubkey33,bits256 pubkey25519,struct basilisk_swap *swap,int32_t optionduration,uint32_t statebits,int32_t reinit) { FILE *fp; char fname[512]; uint8_t *alicepub33=0,*bobpub33=0; int32_t jumblrflag,x = -1; @@ -1376,6 +1427,17 @@ struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 priv if ( (fp= fopen(fname,"rb")) != 0 ) { fread(&swap->I,1,sizeof(swap->I),fp); + basilisk_swap_loadtx(&swap->bobdeposit,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobpayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->alicepayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->myfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->otherfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->aliceclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->alicespend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobreclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobspend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobrefund,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->alicereclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); fread(swap->privkeys,1,sizeof(swap->privkeys),fp); fread(swap->otherdeck,1,sizeof(swap->otherdeck),fp); fread(swap->deck,1,sizeof(swap->deck),fp); @@ -1474,8 +1536,10 @@ struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 priv void basilisk_rawtx_purge(struct basilisk_rawtx *rawtx) { - if ( rawtx->txbytes != 0 ) - free(rawtx->txbytes), rawtx->txbytes = 0; + if ( rawtx->vins != 0 ) + free_json(rawtx->vins); + //if ( rawtx->txbytes != 0 ) + // free(rawtx->txbytes), rawtx->txbytes = 0; } void basilisk_swap_finished(struct supernet_info *myinfo,struct basilisk_swap *swap) @@ -1488,11 +1552,12 @@ void basilisk_swap_finished(struct supernet_info *myinfo,struct basilisk_swap *s basilisk_rawtx_purge(&swap->alicepayment); basilisk_rawtx_purge(&swap->myfee); basilisk_rawtx_purge(&swap->otherfee); - basilisk_rawtx_purge(&swap->alicereclaim); + basilisk_rawtx_purge(&swap->aliceclaim); basilisk_rawtx_purge(&swap->alicespend); basilisk_rawtx_purge(&swap->bobreclaim); basilisk_rawtx_purge(&swap->bobspend); basilisk_rawtx_purge(&swap->bobrefund); + basilisk_rawtx_purge(&swap->alicereclaim); for (i=0; inummessages; i++) if ( swap->messages[i].data != 0 ) free(swap->messages[i].data), swap->messages[i].data = 0; @@ -2087,7 +2152,7 @@ void basilisk_psockinit(struct supernet_info *myinfo,struct basilisk_swap *swap, void basilisk_swaploop(void *_swap) { - uint8_t *data; uint32_t expiration; char fname[512]; uint32_t channel; int32_t retval=0,i,j,datalen,maxlen; FILE *fp; struct supernet_info *myinfo; struct basilisk_swap *swap = _swap; + uint8_t *data; uint32_t expiration; uint32_t channel; int32_t retval=0,i,j,datalen,maxlen; struct supernet_info *myinfo; struct basilisk_swap *swap = _swap; myinfo = swap->myinfoptr; fprintf(stderr,"start swap\n"); maxlen = 1024*1024 + sizeof(*swap); @@ -2112,8 +2177,6 @@ void basilisk_swaploop(void *_swap) break; } sleep(DEX_SLEEP); - //dpow_nanomsg_update(myinfo); - //dex_updateclient(myinfo); } if ( swap->connected == 0 ) { @@ -2134,8 +2197,6 @@ void basilisk_swaploop(void *_swap) break; } sleep(DEX_SLEEP + (swap->I.iambob == 0)*1); - //dpow_nanomsg_update(myinfo); - //dex_updateclient(myinfo); } myinfo->DEXactive = swap->I.expiration; if ( time(NULL) >= expiration ) @@ -2144,27 +2205,17 @@ void basilisk_swaploop(void *_swap) myinfo->DEXactive = 0; } printf("C r%u/q%u swapstate.%x retval.%d\n",swap->I.req.requestid,swap->I.req.quoteid,swap->I.statebits,retval); - sprintf(fname,"%s/SWAPS/%u-%u.swap",GLOBAL_DBDIR,swap->I.req.requestid,swap->I.req.quoteid); - if ( (fp= fopen(fname,"wb")) != 0 ) - { - fwrite(&swap->I,1,sizeof(swap->I),fp); - fwrite(swap->privkeys,1,sizeof(swap->privkeys),fp); - fwrite(swap->otherdeck,1,sizeof(swap->otherdeck),fp); - fwrite(swap->deck,1,sizeof(swap->deck),fp); - fclose(fp); - } + basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && (swap->I.statebits & 0x40) == 0 ) // send fee { if ( swap->connected == 0 ) basilisk_psockinit(myinfo,swap,swap->I.iambob != 0); - //dpow_nanomsg_update(myinfo); - //dex_updateclient(myinfo); //printf("sendstate.%x\n",swap->I.statebits); basilisk_sendstate(myinfo,swap,data,maxlen); //printf("swapget\n"); basilisk_swapget(myinfo,swap,0x80000000,data,maxlen,basilisk_verify_otherstatebits); //printf("after swapget\n"); - if ( swap->myfee.txbytes == 0 ) + if ( swap->myfee.I.datalen == 0 ) { /*for (i=0; i<20; i++) printf("%02x",swap->secretAm[i]); @@ -2214,7 +2265,7 @@ void basilisk_swaploop(void *_swap) //if ( swap->alicepayment.txbytes != 0 && swap->alicepayment.I.spendlen != 0 ) // break; basilisk_alicepayment(myinfo,swap,swap->alicepayment.coin,&swap->alicepayment,swap->I.pubAm,swap->I.pubBn); - if ( swap->alicepayment.txbytes == 0 || swap->alicepayment.I.spendlen == 0 ) + if ( swap->alicepayment.I.datalen == 0 || swap->alicepayment.I.spendlen == 0 ) { printf("error alice generating payment.%d\n",swap->alicepayment.I.spendlen); sleep(DEX_SLEEP); @@ -2242,7 +2293,7 @@ void basilisk_swaploop(void *_swap) printf("%02x",swap->myfee.txbytes[i]); printf(" fee %p %x\n",swap->myfee.txbytes,swap->I.statebits); swap->I.statebits |= 0x40; - if ( swap->alicepayment.txbytes != 0 && swap->alicepayment.I.spendlen > 0 ) + if ( swap->alicepayment.I.datalen != 0 && swap->alicepayment.I.spendlen > 0 ) break; } else @@ -2252,6 +2303,7 @@ void basilisk_swaploop(void *_swap) } } } + basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && basilisk_swapiteration(myinfo,swap,data,maxlen) == 0 ) { sleep(DEX_SLEEP); @@ -2259,11 +2311,10 @@ void basilisk_swaploop(void *_swap) basilisk_swapget(myinfo,swap,0x80000000,data,maxlen,basilisk_verify_otherstatebits); if ( time(NULL) > swap->I.expiration ) break; - //dpow_nanomsg_update(myinfo); - //dex_updateclient(myinfo); } + basilisk_swap_saveupdate(myinfo,swap); printf("end of atomic swap\n"); - if ( swap->I.iambob != 0 && swap->bobdeposit.txbytes != 0 ) + if ( swap->I.iambob != 0 && swap->bobdeposit.I.datalen != 0 ) { sleep(300); // wait for confirm of msig printf("BOB reclaims refund\n"); @@ -2279,6 +2330,7 @@ void basilisk_swaploop(void *_swap) data[datalen++] = swap->I.privBn.bytes[j]; basilisk_swapsend(myinfo,swap,0x40000000,data,datalen,0x40000000,swap->I.crcs_mypriv); } + basilisk_swap_saveupdate(myinfo,swap); } if ( swapcompleted(myinfo,swap) > 0 ) // only if swap completed { @@ -2334,8 +2386,6 @@ struct basilisk_swap *basilisk_thread_start(struct supernet_info *myinfo,bits256 while ( statebits == 0 && m <= n/2 && time(NULL) < starttime+BASILISK_MSGDURATION ) { m = n = 0; - //dpow_nanomsg_update(myinfo); - //dex_updateclient(myinfo); sleep(DEX_SLEEP); printf("waiting for offer to be accepted\n"); channel = 'D' + ((uint32_t)'E' << 8) + ((uint32_t)'X' << 16); diff --git a/basilisk/basilisk_tradebot.c b/basilisk/basilisk_tradebot.c index 8b66ee5a8..5d16548dc 100755 --- a/basilisk/basilisk_tradebot.c +++ b/basilisk/basilisk_tradebot.c @@ -69,12 +69,12 @@ int32_t basilisk_txitem(struct supernet_info *myinfo,struct basilisk_swap *swap, decode_hex((void *)&rawtx->I,sizeof(rawtx->I),hexstr); if ( (hexstr= jstr(obj,"txbytes")) != 0 && strlen(hexstr) == rawtx->I.datalen*2 ) { - if ( rawtx->txbytes == 0 ) + /*if ( rawtx->txbytes == 0 ) { printf("free (%s) txbytes\n",name); free(rawtx->txbytes); } - rawtx->txbytes = calloc(1,rawtx->I.datalen); + rawtx->txbytes = calloc(1,rawtx->I.datalen);*/ decode_hex((void *)rawtx->txbytes,rawtx->I.datalen,hexstr); } printf("PROCESS.(%s)\n",jprint(obj,0)); From ec925bbd42caf2902d2494c3f7a72cf0b5bba973 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 13:11:45 +0200 Subject: [PATCH 02/11] Test --- iguana/dpow/dpow_network.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iguana/dpow/dpow_network.c b/iguana/dpow/dpow_network.c index 0bd18acf1..cadc11faa 100755 --- a/iguana/dpow/dpow_network.c +++ b/iguana/dpow/dpow_network.c @@ -256,7 +256,7 @@ void dpow_psockloop(void *_ptr) ptr->lasttime = now; if ( (sentbytes= nn_send(ptr->pubsock,buf,size,0)) > 0 ) { - printf("PSOCKS[%d] of %d (%u %u) -> %d/%d bytes\n",i,myinfo->numpsocks,ptr->pushport,ptr->subport,size,sentbytes); + //printf("PSOCKS[%d] of %d (%u %u) -> %d/%d bytes\n",i,myinfo->numpsocks,ptr->pushport,ptr->subport,size,sentbytes); nonz++; } } From 2b44cc203e916d3ba6adaae2b14395d922bc8903 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 13:41:52 +0200 Subject: [PATCH 03/11] Test --- basilisk/basilisk_swap.c | 39 ++++++++++++++++++++++++--------------- iguana/iguana_json.c | 4 +++- 2 files changed, 27 insertions(+), 16 deletions(-) diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index 0bf525368..2ea0f4055 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -1412,6 +1412,7 @@ int32_t basilisk_swap_loadtx(struct basilisk_rawtx *rawtx,FILE *fp,char *bobcoin rawtx->coin = iguana_coinfind(rawtx->I.coinstr); if ( rawtx->vinstr[0] != 0 ) rawtx->vins = cJSON_Parse(rawtx->vinstr); + printf("loaded.%s\n",rawtx->name); return(0); } } @@ -1427,20 +1428,27 @@ struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 priv if ( (fp= fopen(fname,"rb")) != 0 ) { fread(&swap->I,1,sizeof(swap->I),fp); - basilisk_swap_loadtx(&swap->bobdeposit,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->bobpayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->alicepayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->myfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->otherfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->aliceclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->alicespend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->bobreclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->bobspend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->bobrefund,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->alicereclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - fread(swap->privkeys,1,sizeof(swap->privkeys),fp); - fread(swap->otherdeck,1,sizeof(swap->otherdeck),fp); - fread(swap->deck,1,sizeof(swap->deck),fp); + if ( swap->bobcoin == 0 ) + swap->bobcoin = iguana_coinfind(swap->I.req.dest); + if ( swap->alicecoin == 0 ) + swap->alicecoin = iguana_coinfind(swap->I.req.src); + if ( swap->alicecoin != 0 && swap->bobcoin == 0 ) + { + basilisk_swap_loadtx(&swap->bobdeposit,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobpayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->alicepayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->myfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->otherfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->aliceclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->alicespend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobreclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobspend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->bobrefund,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + basilisk_swap_loadtx(&swap->alicereclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + fread(swap->privkeys,1,sizeof(swap->privkeys),fp); + fread(swap->otherdeck,1,sizeof(swap->otherdeck),fp); + fread(swap->deck,1,sizeof(swap->deck),fp); + } else printf("missing coins (%p %p)\n",swap->bobcoin,swap->alicecoin); fclose(fp); } } @@ -1723,7 +1731,7 @@ uint32_t basilisk_swapdata_rawtxsend(struct supernet_info *myinfo,struct basilis } } return(nextbits); - } else printf("error from basilisk_swapdata_rawtx %p len.%d\n",rawtx->txbytes,rawtx->I.datalen); + } else printf("error from basilisk_swapdata_rawtx.%s %p len.%d\n",rawtx->name,rawtx->txbytes,rawtx->I.datalen); return(0); } @@ -2183,6 +2191,7 @@ void basilisk_swaploop(void *_swap) printf("couldnt establish connection\n"); retval = -1; } + basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && (swap->I.statebits & 0x20) == 0 && time(NULL) < expiration ) { if ( swap->connected == 0 ) diff --git a/iguana/iguana_json.c b/iguana/iguana_json.c index 38c6c5b98..3918fb599 100755 --- a/iguana/iguana_json.c +++ b/iguana/iguana_json.c @@ -86,6 +86,7 @@ cJSON *SuperNET_helpjson() cJSON *array=0,*json,*agents; json = cJSON_CreateObject(); agents = cJSON_CreateArray(); +#ifndef WIN32 #define IGUANA_ARGS json,array,agents #define IGUANA_HELP0(agent,name) array = helpjson(IGUANA_ARGS,#agent,#name,0) #define IGUANA_HELP_S(agent,name,str) array = helpjson(IGUANA_ARGS,#agent,#name,helparray(cJSON_CreateArray(),helpitem(#str,"string"))) @@ -194,7 +195,8 @@ cJSON *SuperNET_helpjson() #undef IGUANA_ARGS #undef _IGUANA_APIDEC_H_ #include "../includes/iguana_apiundefs.h" - +#endif + if ( array != 0 ) jadd(json,"API",array); jadd(json,"agents",agents); From 4e554026b6f121ac1c76dbeb1bd76b654316a40b Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 13:46:36 +0200 Subject: [PATCH 04/11] Test --- iguana/iguana_json.c | 417 --------------------------------------- iguana/ramchain_api.c | 420 ++++++++++++++++++++++++++++++++++++++++ includes/iguana_funcs.h | 2 + 3 files changed, 422 insertions(+), 417 deletions(-) diff --git a/iguana/iguana_json.c b/iguana/iguana_json.c index 3918fb599..8002aa331 100755 --- a/iguana/iguana_json.c +++ b/iguana/iguana_json.c @@ -498,423 +498,6 @@ char *SuperNET_htmlstr(char *fname,char *htmlstr,int32_t maxsize,char *agentstr) return(OS_filestr(&filesize,"index7778.html")); } -cJSON *iguana_peerjson(struct iguana_info *coin,struct iguana_peer *addr) -{ - cJSON *array,*json = cJSON_CreateObject(); - jaddstr(json,"ipaddr",addr->ipaddr); - if ( addr->supernet != 0 ) - jaddstr(json,"ipaddr",addr->ipaddr); - jaddstr(json,"supernet","yes"); - jaddnum(json,"protover",addr->protover); - jaddnum(json,"relay",addr->relayflag); - jaddnum(json,"height",addr->height); - jaddnum(json,"rank",addr->rank); - jaddnum(json,"usock",addr->usock); - if ( addr->dead != 0 ) - jaddnum(json,"dead",addr->dead); - jaddnum(json,"ready",addr->ready); - jaddnum(json,"recvblocks",addr->recvblocks); - jaddnum(json,"recvtotal",addr->recvtotal); - jaddnum(json,"lastcontact",addr->lastcontact); - if ( addr->numpings > 0 ) - jaddnum(json,"aveping",addr->pingsum/addr->numpings); - array = cJSON_CreateObject(); - jaddnum(array,"version",addr->msgcounts.version); - jaddnum(array,"verack",addr->msgcounts.verack); - jaddnum(array,"getaddr",addr->msgcounts.getaddr); - jaddnum(array,"addr",addr->msgcounts.addr); - jaddnum(array,"inv",addr->msgcounts.inv); - jaddnum(array,"getdata",addr->msgcounts.getdata); - jaddnum(array,"notfound",addr->msgcounts.notfound); - jaddnum(array,"getblocks",addr->msgcounts.getblocks); - jaddnum(array,"getheaders",addr->msgcounts.getheaders); - jaddnum(array,"headers",addr->msgcounts.headers); - jaddnum(array,"tx",addr->msgcounts.tx); - jaddnum(array,"block",addr->msgcounts.block); - jaddnum(array,"mempool",addr->msgcounts.mempool); - jaddnum(array,"ping",addr->msgcounts.ping); - jaddnum(array,"pong",addr->msgcounts.pong); - jaddnum(array,"reject",addr->msgcounts.reject); - jaddnum(array,"filterload",addr->msgcounts.filterload); - jaddnum(array,"filteradd",addr->msgcounts.filteradd); - jaddnum(array,"filterclear",addr->msgcounts.filterclear); - jaddnum(array,"merkleblock",addr->msgcounts.merkleblock); - jaddnum(array,"alert",addr->msgcounts.alert); - jadd(json,"msgcounts",array); - return(json); -} - -cJSON *iguana_peersjson(struct iguana_info *coin,int32_t addronly) -{ - cJSON *retjson,*array; int32_t i; struct iguana_peer *addr; - if ( coin == 0 || coin->peers == 0 ) - return(0); - array = cJSON_CreateArray(); - for (i=0; iMAXPEERS; i++) - { - addr = &coin->peers->active[i]; - if ( addr->usock >= 0 && addr->ipbits != 0 && addr->ipaddr[0] != 0 ) - { - if ( addronly != 0 ) - jaddistr(array,addr->ipaddr); - else jaddi(array,iguana_peerjson(coin,addr)); - } - } - if ( addronly == 0 ) - { - retjson = cJSON_CreateObject(); - jadd(retjson,"peers",array); - jaddnum(retjson,"maxpeers",coin->MAXPEERS); - jaddstr(retjson,"coin",coin->symbol); - return(retjson); - } - else return(array); -} - -#include "../includes/iguana_apidefs.h" -#include "../includes/iguana_apideclares.h" - -STRING_ARG(iguana,peers,activecoin) -{ - if ( coin != 0 ) - return(jprint(iguana_peersjson(coin,0),1)); - else return(clonestr("{\"error\":\"peers needs coin\"}")); -} - -STRING_ARG(iguana,getconnectioncount,activecoin) -{ - int32_t i,num = 0; char buf[512]; - if ( coin != 0 && coin->peers != 0 ) - { - for (i=0; ipeers->active)/sizeof(*coin->peers->active); i++) - if ( coin->peers->active[i].usock >= 0 ) - num++; - sprintf(buf,"{\"result\":\"%d\"}",num); - return(clonestr(buf)); - } else return(clonestr("{\"error\":\"getconnectioncount needs coin\"}")); -} - -ZERO_ARGS(bitcoinrpc,getdifficulty) -{ - char buf[512]; - if ( coin != 0 ) - { - sprintf(buf,"{\"result\":\"success\",\"proof-of-work\":\"%.8f\",\"search-interval\": 0}",PoW_from_compact(coin->blocks.hwmchain.RO.bits,coin->chain->unitval)); - return(clonestr(buf)); - } else return(clonestr("{\"error\":\"getdifficulty needs coin\"}")); -} - -STRING_ARG(iguana,addcoin,newcoin) -{ - char *symbol,*seedip; int32_t retval; - if ( (symbol= newcoin) == 0 && coin != 0 ) - symbol = coin->symbol; - if ( symbol != 0 ) - { - if ( (seedip= jstr(json,"seedipaddr")) != 0 ) - safecopy(myinfo->seedipaddr,seedip,sizeof(myinfo->seedipaddr)); - printf(">> addcoin.%s seedipaddr.%s\n",symbol,myinfo->seedipaddr); -#ifdef __PNACL__ -// if ( strcmp(symbol,"BTC") == 0 ) -// return(clonestr("{\"result\":\"BTC for chrome app is not yet\"}")); -#endif - if ( (retval= iguana_launchcoin(myinfo,symbol,json,0)) > 0 ) - { - if ( myinfo->rpcsymbol[0] == 0 ) - safecopy(myinfo->rpcsymbol,symbol,sizeof(myinfo->rpcsymbol)); - return(clonestr("{\"result\":\"coin added\"}")); - } - else if ( retval == 0 ) - return(clonestr("{\"result\":\"coin already there\"}")); - else return(clonestr("{\"error\":\"error adding coin\"}")); - } else return(clonestr("{\"error\":\"addcoin needs newcoin\"}")); -} - -STRING_ARG(iguana,startcoin,activecoin) -{ - if ( coin != 0 ) - { - coin->active = 1; - return(clonestr("{\"result\":\"coin started\"}")); - } else return(clonestr("{\"error\":\"startcoin needs coin\"}")); -} - -STRING_ARG(iguana,stopcoin,activecoin) -{ - if ( activecoin[0] != 0 ) - coin = iguana_coinfind(activecoin); - if ( coin != 0 ) - { - coin->active = 0; - //iguana_coinpurge(coin); - return(clonestr("{\"result\":\"coin stopped\"}")); - } else return(clonestr("{\"error\":\"stopcoin needs coin\"}")); -} - -STRING_ARG(iguana,pausecoin,activecoin) -{ - if ( coin != 0 ) - { - coin->active = 0; - return(clonestr("{\"result\":\"coin paused\"}")); - } else return(clonestr("{\"error\":\"pausecoin needs coin\"}")); -} - -TWO_STRINGS(iguana,addnode,activecoin,ipaddr) -{ - struct iguana_peer *addr; int32_t i,n; - if ( coin == 0 ) - coin = iguana_coinfind(activecoin); - if ( coin != 0 && strcmp(coin->symbol,"RELAY") == 0 ) - basilisk_addrelay_info(myinfo,0,(uint32_t)calc_ipbits(ipaddr),GENESIS_PUBKEY); - printf("coin.%p.[%s] addnode.%s -> %s\n",coin,coin!=0?coin->symbol:"",activecoin,ipaddr); - if ( coin != 0 && coin->peers != 0 && ipaddr != 0 && is_ipaddr(ipaddr) != 0 ) - { - //iguana_possible_peer(coin,ipaddr); - if ( (addr= iguana_peerslot(coin,(uint32_t)calc_ipbits(ipaddr),1)) != 0 ) - { - addr->supernet = 1; - if ( addr->usock >= 0 ) - { - if ( (n= coin->peers->numranked) != 0 ) - { - for (i=0; ipeers->ranked[i] ) - break; - } - if ( i == n ) - { - if ( i == IGUANA_MAXPEERS ) - i--; - else coin->peers->numranked = n+1; - coin->peers->ranked[i] = addr; - addr->recvblocks = coin->peers->ranked[0]->recvblocks + 100; - addr->recvtotal = coin->peers->ranked[0]->recvtotal*1.1 + 100; - printf("set (%s) -> slot.%d numranked.%d\n",ipaddr,i,coin->peers->numranked); - } else printf("(%s) is already peer.%d\n",ipaddr,i); - } - return(clonestr("{\"result\":\"peer was already connected\"}")); - } - if ( addr->pending == 0 ) - { - addr->pending = (uint32_t)time(NULL); - iguana_launch(coin,"connection",iguana_startconnection,addr,IGUANA_CONNTHREAD); - return(clonestr("{\"result\":\"addnode submitted\"}")); - } else return(clonestr("{\"result\":\"addnode connection was already pending\"}")); - } else return(clonestr("{\"result\":\"addnode cant find peer slot\"}")); - } - else if ( coin == 0 ) - return(clonestr("{\"error\":\"addnode needs active coin, do an addcoin first\"}")); - else return(clonestr("{\"error\":\"addnode needs ipaddr\"}")); -} - -TWO_STRINGS(iguana,persistent,activecoin,ipaddr) -{ - int32_t i; - if ( coin != 0 && coin->peers != 0 && ipaddr != 0 ) - { - for (i=0; ipeers->active[i].ipaddr,ipaddr) == 0 ) - { - coin->peers->active[i].persistent_peer = juint(json,"interval")+3; - return(clonestr("{\"result\":\"node marked as persistent\"}")); - } - } - return(clonestr("{\"result\":\"node wasnt active\"}")); - } else return(clonestr("{\"error\":\"persistent needs coin and ipaddr\"}")); -} - -TWO_STRINGS(iguana,removenode,activecoin,ipaddr) -{ - int32_t i; - if ( coin != 0 && coin->peers != 0 && ipaddr != 0 ) - { - for (i=0; ipeers->active[i].ipaddr,ipaddr) == 0 ) - { - coin->peers->active[i].rank = 0; - coin->peers->active[i].dead = (uint32_t)time(NULL); - return(clonestr("{\"result\":\"node marked as dead\"}")); - } - } - return(clonestr("{\"result\":\"node wasnt active\"}")); - } else return(clonestr("{\"error\":\"removenode needs coin and ipaddr\"}")); -} - -TWO_STRINGS(iguana,oneshot,activecoin,ipaddr) -{ - if ( coin != 0 && ipaddr != 0 ) - { - iguana_possible_peer(coin,ipaddr); - return(clonestr("{\"result\":\"addnode submitted\"}")); - } else return(clonestr("{\"error\":\"addnode needs coin and ipaddr\"}")); -} - -TWO_STRINGS(iguana,nodestatus,activecoin,ipaddr) -{ - int32_t i; struct iguana_peer *addr; - if ( coin != 0 && coin->peers != 0 && ipaddr != 0 ) - { - for (i=0; iMAXPEERS; i++) - { - addr = &coin->peers->active[i]; - if ( strcmp(addr->ipaddr,ipaddr) == 0 ) - return(jprint(iguana_peerjson(coin,addr),1)); - } - return(clonestr("{\"result\":\"nodestatus couldnt find ipaddr\"}")); - } else return(clonestr("{\"error\":\"nodestatus needs ipaddr\"}")); -} - -STRING_AND_INT(iguana,maxpeers,activecoin,max) -{ - cJSON *retjson; int32_t i; struct iguana_peer *addr; - if ( coin != 0 && coin->peers != 0 ) - { - retjson = cJSON_CreateObject(); - if ( max > IGUANA_MAXPEERS ) - max = IGUANA_MAXPEERS; - if ( max > coin->MAXPEERS ) - { - for (i=max; iMAXPEERS; i++) - if ( (addr= coin->peers->ranked[i]) != 0 ) - addr->dead = 1; - } - coin->MAXPEERS = max; - jaddnum(retjson,"maxpeers",coin->MAXPEERS); - jaddstr(retjson,"coin",coin->symbol); - return(jprint(retjson,1)); - } else return(clonestr("{\"error\":\"maxpeers needs coin\"}")); -} - -char *hmac_dispatch(char *(*hmacfunc)(char *dest,char *key,int32_t key_size,char *message),char *name,char *message,char *password) -{ - char hexstr[1025]; cJSON *json; - if ( message != 0 && password != 0 && message[0] != 0 && password[0] != 0 ) - { - memset(hexstr,0,sizeof(hexstr)); - (*hmacfunc)(hexstr,password,password==0?0:(int32_t)strlen(password),message); - json = cJSON_CreateObject(); - jaddstr(json,"result","hmac calculated"); - jaddstr(json,"message",message); - jaddstr(json,name,hexstr); - return(jprint(json,1)); - } else return(clonestr("{\"error\":\"hmac needs message and passphrase\"}")); -} - -char *hash_dispatch(void (*hashfunc)(char *hexstr,uint8_t *buf,uint8_t *msg,int32_t len),char *name,char *message) -{ - char hexstr[65537]; uint8_t databuf[32768]; cJSON *json; - if ( message != 0 && message[0] != 0 ) - { - memset(hexstr,0,sizeof(hexstr)); - (*hashfunc)(hexstr,databuf,(uint8_t *)message,(int32_t)strlen(message)); - json = cJSON_CreateObject(); - jaddstr(json,"result","hash calculated"); - jaddstr(json,"message",message); - jaddstr(json,name,hexstr); - return(jprint(json,1)); - } else return(clonestr("{\"error\":\"hash needs message\"}")); -} - -TWO_HASHES(hash,curve25519_pair,element,scalar) -{ - cJSON *retjson = cJSON_CreateObject(); - jaddbits256(retjson,"result",curve25519(element,scalar)); - return(jprint(retjson,1)); -} - -STRING_ARG(hash,NXT,passphrase) { return(hash_dispatch(calc_NXTaddr,"NXT",passphrase)); } -STRING_ARG(hash,curve25519,pubkey) { return(hash_dispatch(calc_curve25519_str,"curve25519",pubkey)); } -STRING_ARG(hash,crc32,message) { return(hash_dispatch(calc_crc32str,"crc32",message)); } -STRING_ARG(hash,base64_encode,message) { return(hash_dispatch(calc_base64_encodestr,"base64_encode",message)); } -STRING_ARG(hash,base64_decode,message) { return(hash_dispatch(calc_base64_decodestr,"base64_decode",message)); } -STRING_ARG(hash,rmd160_sha256,message) { return(hash_dispatch(rmd160ofsha256,"rmd160_sha256",message)); } -STRING_ARG(hash,sha256_sha256,message) { return(hash_dispatch(sha256_sha256,"sha256_sha256",message)); } -STRING_ARG(hash,hex,message) { return(hash_dispatch(calc_hexstr,"hex",message)); } -STRING_ARG(hash,unhex,message) { return(hash_dispatch(calc_unhexstr,"unhex",message)); } - -STRING_ARG(hash,sha224,message) { return(hash_dispatch(calc_sha224,"sha224",message)); } -STRING_ARG(hash,sha256,message) { return(hash_dispatch(vcalc_sha256,"sha256",message)); } -STRING_ARG(hash,sha384,message) { return(hash_dispatch(calc_sha384,"sha384",message)); } -STRING_ARG(hash,sha512,message) { return(hash_dispatch(calc_sha512,"sha512",message)); } -STRING_ARG(hash,rmd128,message) { return(hash_dispatch(calc_rmd128,"rmd128",message)); } -STRING_ARG(hash,rmd160,message) { return(hash_dispatch(calc_rmd160,"rmd160",message)); } -STRING_ARG(hash,rmd256,message) { return(hash_dispatch(calc_rmd256,"rmd256",message)); } -STRING_ARG(hash,rmd320,message) { return(hash_dispatch(calc_rmd320,"rmd320",message)); } -STRING_ARG(hash,sha1,message) { return(hash_dispatch(calc_sha1,"sha1",message)); } -STRING_ARG(hash,md2,message) { return(hash_dispatch(calc_md2str,"md2",message)); } -STRING_ARG(hash,md4,message) { return(hash_dispatch(calc_md4str,"md4",message)); } -STRING_ARG(hash,md5,message) { return(hash_dispatch(calc_md5str,"md5",message)); } -STRING_ARG(hash,tiger192_3,message) { return(hash_dispatch(calc_tiger,"tiger",message)); } -STRING_ARG(hash,whirlpool,message) { return(hash_dispatch(calc_whirlpool,"whirlpool",message)); } -TWO_STRINGS(hmac,sha224,message,passphrase) { return(hmac_dispatch(hmac_sha224_str,"sha224",message,passphrase)); } -TWO_STRINGS(hmac,sha256,message,passphrase) { return(hmac_dispatch(hmac_sha256_str,"sha256",message,passphrase)); } -TWO_STRINGS(hmac,sha384,message,passphrase) { return(hmac_dispatch(hmac_sha384_str,"sha384",message,passphrase)); } -TWO_STRINGS(hmac,sha512,message,passphrase) { return(hmac_dispatch(hmac_sha512_str,"sha512",message,passphrase)); } -TWO_STRINGS(hmac,rmd128,message,passphrase) { return(hmac_dispatch(hmac_rmd128_str,"rmd128",message,passphrase)); } -TWO_STRINGS(hmac,rmd160,message,passphrase) { return(hmac_dispatch(hmac_rmd160_str,"rmd160",message,passphrase)); } -TWO_STRINGS(hmac,rmd256,message,passphrase) { return(hmac_dispatch(hmac_rmd256_str,"rmd256",message,passphrase)); } -TWO_STRINGS(hmac,rmd320,message,passphrase) { return(hmac_dispatch(hmac_rmd320_str,"rmd320",message,passphrase)); } -TWO_STRINGS(hmac,sha1,message,passphrase) { return(hmac_dispatch(hmac_sha1_str,"sha1",message,passphrase)); } -TWO_STRINGS(hmac,md2,message,passphrase) { return(hmac_dispatch(hmac_md2_str,"md2",message,passphrase)); } -TWO_STRINGS(hmac,md4,message,passphrase) { return(hmac_dispatch(hmac_md4_str,"md4",message,passphrase)); } -TWO_STRINGS(hmac,md5,message,passphrase) { return(hmac_dispatch(hmac_md5_str,"md5",message,passphrase)); } -TWO_STRINGS(hmac,tiger192_3,message,passphrase) { return(hmac_dispatch(hmac_tiger_str,"tiger",message,passphrase)); } -TWO_STRINGS(hmac,whirlpool,message,passphrase) { return(hmac_dispatch(hmac_whirlpool_str,"whirlpool",message,passphrase)); } - -STRING_ARG(SuperNET,bitcoinrpc,setcoin) -{ - char buf[1024]; - if ( setcoin != 0 && setcoin[0] != 0 ) - { - strcpy(myinfo->rpcsymbol,setcoin); - touppercase(myinfo->rpcsymbol); - printf("bitcoinrpc.%s\n",myinfo->rpcsymbol); - if ( iguana_launchcoin(myinfo,myinfo->rpcsymbol,json,0) < 0 ) - return(clonestr("{\"error\":\"error creating coin\"}")); - else - { - sprintf(buf,"{\"result\":\"success\",\"setcoin\":\"%s\"}",setcoin); - return(clonestr(buf)); - } - } else return(clonestr("{\"error\":\"bitcoinrpc needs setcoin value\"}")); -} - -ZERO_ARGS(SuperNET,help) -{ - cJSON *helpjson,*retjson; - if ( (helpjson= SuperNET_helpjson()) != 0 ) - { - retjson = cJSON_CreateObject(); - jadd(retjson,"result",helpjson); - return(jprint(retjson,1)); - } else return(clonestr("{\"error\":\"cant get helpjson\"}")); -} - -TWO_STRINGS(SuperNET,html,agentform,htmlfile) -{ - char *htmlstr; cJSON *retjson; int32_t max = 4*1024*1024; - if ( htmlfile == 0 || htmlfile[0] == 0 ) - htmlfile = "forms.html"; - //if ( (fp= fopen(htmlfile,"w")) == 0 ) - // printf("error opening htmlfile.(%s)\n",htmlfile); - htmlstr = malloc(max); - htmlstr = SuperNET_htmlstr(htmlfile,htmlstr,max,agentform); - retjson = cJSON_CreateObject(); - jaddstr(retjson,"result",htmlstr); - free(htmlstr); - //if ( fp != 0 ) - // fclose(fp); - return(jprint(retjson,1)); -} - -#undef IGUANA_ARGS -#undef _IGUANA_APIDEC_H_ -#include "../includes/iguana_apiundefs.h" - char *SuperNET_parser(struct supernet_info *myinfo,char *agentstr,char *method,cJSON *json,char *remoteaddr) { char *coinstr; struct iguana_info *coin = 0; diff --git a/iguana/ramchain_api.c b/iguana/ramchain_api.c index 9c5c4cd2b..267f17ffd 100755 --- a/iguana/ramchain_api.c +++ b/iguana/ramchain_api.c @@ -14,3 +14,423 @@ ******************************************************************************/ // deprecated +#include "iguana777.h" + +#include "../includes/iguana_apidefs.h" +#include "../includes/iguana_apideclares.h" + + +STRING_ARG(iguana,peers,activecoin) +{ + if ( coin != 0 ) + return(jprint(iguana_peersjson(coin,0),1)); + else return(clonestr("{\"error\":\"peers needs coin\"}")); +} + +STRING_ARG(iguana,getconnectioncount,activecoin) +{ + int32_t i,num = 0; char buf[512]; + if ( coin != 0 && coin->peers != 0 ) + { + for (i=0; ipeers->active)/sizeof(*coin->peers->active); i++) + if ( coin->peers->active[i].usock >= 0 ) + num++; + sprintf(buf,"{\"result\":\"%d\"}",num); + return(clonestr(buf)); + } else return(clonestr("{\"error\":\"getconnectioncount needs coin\"}")); +} + +ZERO_ARGS(bitcoinrpc,getdifficulty) +{ + char buf[512]; + if ( coin != 0 ) + { + sprintf(buf,"{\"result\":\"success\",\"proof-of-work\":\"%.8f\",\"search-interval\": 0}",PoW_from_compact(coin->blocks.hwmchain.RO.bits,coin->chain->unitval)); + return(clonestr(buf)); + } else return(clonestr("{\"error\":\"getdifficulty needs coin\"}")); +} + +STRING_ARG(iguana,addcoin,newcoin) +{ + char *symbol,*seedip; int32_t retval; + if ( (symbol= newcoin) == 0 && coin != 0 ) + symbol = coin->symbol; + if ( symbol != 0 ) + { + if ( (seedip= jstr(json,"seedipaddr")) != 0 ) + safecopy(myinfo->seedipaddr,seedip,sizeof(myinfo->seedipaddr)); + printf(">> addcoin.%s seedipaddr.%s\n",symbol,myinfo->seedipaddr); +#ifdef __PNACL__ + // if ( strcmp(symbol,"BTC") == 0 ) + // return(clonestr("{\"result\":\"BTC for chrome app is not yet\"}")); +#endif + if ( (retval= iguana_launchcoin(myinfo,symbol,json,0)) > 0 ) + { + if ( myinfo->rpcsymbol[0] == 0 ) + safecopy(myinfo->rpcsymbol,symbol,sizeof(myinfo->rpcsymbol)); + return(clonestr("{\"result\":\"coin added\"}")); + } + else if ( retval == 0 ) + return(clonestr("{\"result\":\"coin already there\"}")); + else return(clonestr("{\"error\":\"error adding coin\"}")); + } else return(clonestr("{\"error\":\"addcoin needs newcoin\"}")); +} + +STRING_ARG(iguana,startcoin,activecoin) +{ + if ( coin != 0 ) + { + coin->active = 1; + return(clonestr("{\"result\":\"coin started\"}")); + } else return(clonestr("{\"error\":\"startcoin needs coin\"}")); +} + +STRING_ARG(iguana,stopcoin,activecoin) +{ + if ( activecoin[0] != 0 ) + coin = iguana_coinfind(activecoin); + if ( coin != 0 ) + { + coin->active = 0; + //iguana_coinpurge(coin); + return(clonestr("{\"result\":\"coin stopped\"}")); + } else return(clonestr("{\"error\":\"stopcoin needs coin\"}")); +} + +STRING_ARG(iguana,pausecoin,activecoin) +{ + if ( coin != 0 ) + { + coin->active = 0; + return(clonestr("{\"result\":\"coin paused\"}")); + } else return(clonestr("{\"error\":\"pausecoin needs coin\"}")); +} + +TWO_STRINGS(iguana,addnode,activecoin,ipaddr) +{ + struct iguana_peer *addr; int32_t i,n; + if ( coin == 0 ) + coin = iguana_coinfind(activecoin); + if ( coin != 0 && strcmp(coin->symbol,"RELAY") == 0 ) + basilisk_addrelay_info(myinfo,0,(uint32_t)calc_ipbits(ipaddr),GENESIS_PUBKEY); + printf("coin.%p.[%s] addnode.%s -> %s\n",coin,coin!=0?coin->symbol:"",activecoin,ipaddr); + if ( coin != 0 && coin->peers != 0 && ipaddr != 0 && is_ipaddr(ipaddr) != 0 ) + { + //iguana_possible_peer(coin,ipaddr); + if ( (addr= iguana_peerslot(coin,(uint32_t)calc_ipbits(ipaddr),1)) != 0 ) + { + addr->supernet = 1; + if ( addr->usock >= 0 ) + { + if ( (n= coin->peers->numranked) != 0 ) + { + for (i=0; ipeers->ranked[i] ) + break; + } + if ( i == n ) + { + if ( i == IGUANA_MAXPEERS ) + i--; + else coin->peers->numranked = n+1; + coin->peers->ranked[i] = addr; + addr->recvblocks = coin->peers->ranked[0]->recvblocks + 100; + addr->recvtotal = coin->peers->ranked[0]->recvtotal*1.1 + 100; + printf("set (%s) -> slot.%d numranked.%d\n",ipaddr,i,coin->peers->numranked); + } else printf("(%s) is already peer.%d\n",ipaddr,i); + } + return(clonestr("{\"result\":\"peer was already connected\"}")); + } + if ( addr->pending == 0 ) + { + addr->pending = (uint32_t)time(NULL); + iguana_launch(coin,"connection",iguana_startconnection,addr,IGUANA_CONNTHREAD); + return(clonestr("{\"result\":\"addnode submitted\"}")); + } else return(clonestr("{\"result\":\"addnode connection was already pending\"}")); + } else return(clonestr("{\"result\":\"addnode cant find peer slot\"}")); + } + else if ( coin == 0 ) + return(clonestr("{\"error\":\"addnode needs active coin, do an addcoin first\"}")); + else return(clonestr("{\"error\":\"addnode needs ipaddr\"}")); +} + +TWO_STRINGS(iguana,persistent,activecoin,ipaddr) +{ + int32_t i; + if ( coin != 0 && coin->peers != 0 && ipaddr != 0 ) + { + for (i=0; ipeers->active[i].ipaddr,ipaddr) == 0 ) + { + coin->peers->active[i].persistent_peer = juint(json,"interval")+3; + return(clonestr("{\"result\":\"node marked as persistent\"}")); + } + } + return(clonestr("{\"result\":\"node wasnt active\"}")); + } else return(clonestr("{\"error\":\"persistent needs coin and ipaddr\"}")); +} + +TWO_STRINGS(iguana,removenode,activecoin,ipaddr) +{ + int32_t i; + if ( coin != 0 && coin->peers != 0 && ipaddr != 0 ) + { + for (i=0; ipeers->active[i].ipaddr,ipaddr) == 0 ) + { + coin->peers->active[i].rank = 0; + coin->peers->active[i].dead = (uint32_t)time(NULL); + return(clonestr("{\"result\":\"node marked as dead\"}")); + } + } + return(clonestr("{\"result\":\"node wasnt active\"}")); + } else return(clonestr("{\"error\":\"removenode needs coin and ipaddr\"}")); +} + +TWO_STRINGS(iguana,oneshot,activecoin,ipaddr) +{ + if ( coin != 0 && ipaddr != 0 ) + { + iguana_possible_peer(coin,ipaddr); + return(clonestr("{\"result\":\"addnode submitted\"}")); + } else return(clonestr("{\"error\":\"addnode needs coin and ipaddr\"}")); +} + +cJSON *iguana_peerjson(struct iguana_info *coin,struct iguana_peer *addr) +{ + cJSON *array,*json = cJSON_CreateObject(); + jaddstr(json,"ipaddr",addr->ipaddr); + if ( addr->supernet != 0 ) + jaddstr(json,"ipaddr",addr->ipaddr); + jaddstr(json,"supernet","yes"); + jaddnum(json,"protover",addr->protover); + jaddnum(json,"relay",addr->relayflag); + jaddnum(json,"height",addr->height); + jaddnum(json,"rank",addr->rank); + jaddnum(json,"usock",addr->usock); + if ( addr->dead != 0 ) + jaddnum(json,"dead",addr->dead); + jaddnum(json,"ready",addr->ready); + jaddnum(json,"recvblocks",addr->recvblocks); + jaddnum(json,"recvtotal",addr->recvtotal); + jaddnum(json,"lastcontact",addr->lastcontact); + if ( addr->numpings > 0 ) + jaddnum(json,"aveping",addr->pingsum/addr->numpings); + array = cJSON_CreateObject(); + jaddnum(array,"version",addr->msgcounts.version); + jaddnum(array,"verack",addr->msgcounts.verack); + jaddnum(array,"getaddr",addr->msgcounts.getaddr); + jaddnum(array,"addr",addr->msgcounts.addr); + jaddnum(array,"inv",addr->msgcounts.inv); + jaddnum(array,"getdata",addr->msgcounts.getdata); + jaddnum(array,"notfound",addr->msgcounts.notfound); + jaddnum(array,"getblocks",addr->msgcounts.getblocks); + jaddnum(array,"getheaders",addr->msgcounts.getheaders); + jaddnum(array,"headers",addr->msgcounts.headers); + jaddnum(array,"tx",addr->msgcounts.tx); + jaddnum(array,"block",addr->msgcounts.block); + jaddnum(array,"mempool",addr->msgcounts.mempool); + jaddnum(array,"ping",addr->msgcounts.ping); + jaddnum(array,"pong",addr->msgcounts.pong); + jaddnum(array,"reject",addr->msgcounts.reject); + jaddnum(array,"filterload",addr->msgcounts.filterload); + jaddnum(array,"filteradd",addr->msgcounts.filteradd); + jaddnum(array,"filterclear",addr->msgcounts.filterclear); + jaddnum(array,"merkleblock",addr->msgcounts.merkleblock); + jaddnum(array,"alert",addr->msgcounts.alert); + jadd(json,"msgcounts",array); + return(json); +} + +cJSON *iguana_peersjson(struct iguana_info *coin,int32_t addronly) +{ + cJSON *retjson,*array; int32_t i; struct iguana_peer *addr; + if ( coin == 0 || coin->peers == 0 ) + return(0); + array = cJSON_CreateArray(); + for (i=0; iMAXPEERS; i++) + { + addr = &coin->peers->active[i]; + if ( addr->usock >= 0 && addr->ipbits != 0 && addr->ipaddr[0] != 0 ) + { + if ( addronly != 0 ) + jaddistr(array,addr->ipaddr); + else jaddi(array,iguana_peerjson(coin,addr)); + } + } + if ( addronly == 0 ) + { + retjson = cJSON_CreateObject(); + jadd(retjson,"peers",array); + jaddnum(retjson,"maxpeers",coin->MAXPEERS); + jaddstr(retjson,"coin",coin->symbol); + return(retjson); + } + else return(array); +} + +TWO_STRINGS(iguana,nodestatus,activecoin,ipaddr) +{ + int32_t i; struct iguana_peer *addr; + if ( coin != 0 && coin->peers != 0 && ipaddr != 0 ) + { + for (i=0; iMAXPEERS; i++) + { + addr = &coin->peers->active[i]; + if ( strcmp(addr->ipaddr,ipaddr) == 0 ) + return(jprint(iguana_peerjson(coin,addr),1)); + } + return(clonestr("{\"result\":\"nodestatus couldnt find ipaddr\"}")); + } else return(clonestr("{\"error\":\"nodestatus needs ipaddr\"}")); +} + +STRING_AND_INT(iguana,maxpeers,activecoin,max) +{ + cJSON *retjson; int32_t i; struct iguana_peer *addr; + if ( coin != 0 && coin->peers != 0 ) + { + retjson = cJSON_CreateObject(); + if ( max > IGUANA_MAXPEERS ) + max = IGUANA_MAXPEERS; + if ( max > coin->MAXPEERS ) + { + for (i=max; iMAXPEERS; i++) + if ( (addr= coin->peers->ranked[i]) != 0 ) + addr->dead = 1; + } + coin->MAXPEERS = max; + jaddnum(retjson,"maxpeers",coin->MAXPEERS); + jaddstr(retjson,"coin",coin->symbol); + return(jprint(retjson,1)); + } else return(clonestr("{\"error\":\"maxpeers needs coin\"}")); +} + +char *hmac_dispatch(char *(*hmacfunc)(char *dest,char *key,int32_t key_size,char *message),char *name,char *message,char *password) +{ + char hexstr[1025]; cJSON *json; + if ( message != 0 && password != 0 && message[0] != 0 && password[0] != 0 ) + { + memset(hexstr,0,sizeof(hexstr)); + (*hmacfunc)(hexstr,password,password==0?0:(int32_t)strlen(password),message); + json = cJSON_CreateObject(); + jaddstr(json,"result","hmac calculated"); + jaddstr(json,"message",message); + jaddstr(json,name,hexstr); + return(jprint(json,1)); + } else return(clonestr("{\"error\":\"hmac needs message and passphrase\"}")); +} + +char *hash_dispatch(void (*hashfunc)(char *hexstr,uint8_t *buf,uint8_t *msg,int32_t len),char *name,char *message) +{ + char hexstr[65537]; uint8_t databuf[32768]; cJSON *json; + if ( message != 0 && message[0] != 0 ) + { + memset(hexstr,0,sizeof(hexstr)); + (*hashfunc)(hexstr,databuf,(uint8_t *)message,(int32_t)strlen(message)); + json = cJSON_CreateObject(); + jaddstr(json,"result","hash calculated"); + jaddstr(json,"message",message); + jaddstr(json,name,hexstr); + return(jprint(json,1)); + } else return(clonestr("{\"error\":\"hash needs message\"}")); +} + +TWO_HASHES(hash,curve25519_pair,element,scalar) +{ + cJSON *retjson = cJSON_CreateObject(); + jaddbits256(retjson,"result",curve25519(element,scalar)); + return(jprint(retjson,1)); +} + +STRING_ARG(hash,NXT,passphrase) { return(hash_dispatch(calc_NXTaddr,"NXT",passphrase)); } +STRING_ARG(hash,curve25519,pubkey) { return(hash_dispatch(calc_curve25519_str,"curve25519",pubkey)); } +STRING_ARG(hash,crc32,message) { return(hash_dispatch(calc_crc32str,"crc32",message)); } +STRING_ARG(hash,base64_encode,message) { return(hash_dispatch(calc_base64_encodestr,"base64_encode",message)); } +STRING_ARG(hash,base64_decode,message) { return(hash_dispatch(calc_base64_decodestr,"base64_decode",message)); } +STRING_ARG(hash,rmd160_sha256,message) { return(hash_dispatch(rmd160ofsha256,"rmd160_sha256",message)); } +STRING_ARG(hash,sha256_sha256,message) { return(hash_dispatch(sha256_sha256,"sha256_sha256",message)); } +STRING_ARG(hash,hex,message) { return(hash_dispatch(calc_hexstr,"hex",message)); } +STRING_ARG(hash,unhex,message) { return(hash_dispatch(calc_unhexstr,"unhex",message)); } + +STRING_ARG(hash,sha224,message) { return(hash_dispatch(calc_sha224,"sha224",message)); } +STRING_ARG(hash,sha256,message) { return(hash_dispatch(vcalc_sha256,"sha256",message)); } +STRING_ARG(hash,sha384,message) { return(hash_dispatch(calc_sha384,"sha384",message)); } +STRING_ARG(hash,sha512,message) { return(hash_dispatch(calc_sha512,"sha512",message)); } +STRING_ARG(hash,rmd128,message) { return(hash_dispatch(calc_rmd128,"rmd128",message)); } +STRING_ARG(hash,rmd160,message) { return(hash_dispatch(calc_rmd160,"rmd160",message)); } +STRING_ARG(hash,rmd256,message) { return(hash_dispatch(calc_rmd256,"rmd256",message)); } +STRING_ARG(hash,rmd320,message) { return(hash_dispatch(calc_rmd320,"rmd320",message)); } +STRING_ARG(hash,sha1,message) { return(hash_dispatch(calc_sha1,"sha1",message)); } +STRING_ARG(hash,md2,message) { return(hash_dispatch(calc_md2str,"md2",message)); } +STRING_ARG(hash,md4,message) { return(hash_dispatch(calc_md4str,"md4",message)); } +STRING_ARG(hash,md5,message) { return(hash_dispatch(calc_md5str,"md5",message)); } +STRING_ARG(hash,tiger192_3,message) { return(hash_dispatch(calc_tiger,"tiger",message)); } +STRING_ARG(hash,whirlpool,message) { return(hash_dispatch(calc_whirlpool,"whirlpool",message)); } +TWO_STRINGS(hmac,sha224,message,passphrase) { return(hmac_dispatch(hmac_sha224_str,"sha224",message,passphrase)); } +TWO_STRINGS(hmac,sha256,message,passphrase) { return(hmac_dispatch(hmac_sha256_str,"sha256",message,passphrase)); } +TWO_STRINGS(hmac,sha384,message,passphrase) { return(hmac_dispatch(hmac_sha384_str,"sha384",message,passphrase)); } +TWO_STRINGS(hmac,sha512,message,passphrase) { return(hmac_dispatch(hmac_sha512_str,"sha512",message,passphrase)); } +TWO_STRINGS(hmac,rmd128,message,passphrase) { return(hmac_dispatch(hmac_rmd128_str,"rmd128",message,passphrase)); } +TWO_STRINGS(hmac,rmd160,message,passphrase) { return(hmac_dispatch(hmac_rmd160_str,"rmd160",message,passphrase)); } +TWO_STRINGS(hmac,rmd256,message,passphrase) { return(hmac_dispatch(hmac_rmd256_str,"rmd256",message,passphrase)); } +TWO_STRINGS(hmac,rmd320,message,passphrase) { return(hmac_dispatch(hmac_rmd320_str,"rmd320",message,passphrase)); } +TWO_STRINGS(hmac,sha1,message,passphrase) { return(hmac_dispatch(hmac_sha1_str,"sha1",message,passphrase)); } +TWO_STRINGS(hmac,md2,message,passphrase) { return(hmac_dispatch(hmac_md2_str,"md2",message,passphrase)); } +TWO_STRINGS(hmac,md4,message,passphrase) { return(hmac_dispatch(hmac_md4_str,"md4",message,passphrase)); } +TWO_STRINGS(hmac,md5,message,passphrase) { return(hmac_dispatch(hmac_md5_str,"md5",message,passphrase)); } +TWO_STRINGS(hmac,tiger192_3,message,passphrase) { return(hmac_dispatch(hmac_tiger_str,"tiger",message,passphrase)); } +TWO_STRINGS(hmac,whirlpool,message,passphrase) { return(hmac_dispatch(hmac_whirlpool_str,"whirlpool",message,passphrase)); } + +STRING_ARG(SuperNET,bitcoinrpc,setcoin) +{ + char buf[1024]; + if ( setcoin != 0 && setcoin[0] != 0 ) + { + strcpy(myinfo->rpcsymbol,setcoin); + touppercase(myinfo->rpcsymbol); + printf("bitcoinrpc.%s\n",myinfo->rpcsymbol); + if ( iguana_launchcoin(myinfo,myinfo->rpcsymbol,json,0) < 0 ) + return(clonestr("{\"error\":\"error creating coin\"}")); + else + { + sprintf(buf,"{\"result\":\"success\",\"setcoin\":\"%s\"}",setcoin); + return(clonestr(buf)); + } + } else return(clonestr("{\"error\":\"bitcoinrpc needs setcoin value\"}")); +} + +ZERO_ARGS(SuperNET,help) +{ + cJSON *helpjson,*retjson; + if ( (helpjson= SuperNET_helpjson()) != 0 ) + { + retjson = cJSON_CreateObject(); + jadd(retjson,"result",helpjson); + return(jprint(retjson,1)); + } else return(clonestr("{\"error\":\"cant get helpjson\"}")); +} + +TWO_STRINGS(SuperNET,html,agentform,htmlfile) +{ + char *htmlstr; cJSON *retjson; int32_t max = 4*1024*1024; + if ( htmlfile == 0 || htmlfile[0] == 0 ) + htmlfile = "forms.html"; + //if ( (fp= fopen(htmlfile,"w")) == 0 ) + // printf("error opening htmlfile.(%s)\n",htmlfile); + htmlstr = malloc(max); + htmlstr = SuperNET_htmlstr(htmlfile,htmlstr,max,agentform); + retjson = cJSON_CreateObject(); + jaddstr(retjson,"result",htmlstr); + free(htmlstr); + //if ( fp != 0 ) + // fclose(fp); + return(jprint(retjson,1)); +} + +#undef IGUANA_ARGS +#undef _IGUANA_APIDEC_H_ +#include "../includes/iguana_apiundefs.h" + diff --git a/includes/iguana_funcs.h b/includes/iguana_funcs.h index 0dec6a079..7496ccd4b 100755 --- a/includes/iguana_funcs.h +++ b/includes/iguana_funcs.h @@ -17,6 +17,8 @@ #define H_IGUANAFUNCS_H #define SIGHASH_ALL 1 +cJSON *SuperNET_helpjson(); + // peers int32_t iguana_verifypeer(struct iguana_info *coin,void *key,void *value,int32_t itemind,int32_t itemsize); int32_t iguana_peermetrics(struct supernet_info *myinfo,struct iguana_info *coin); From 2cb9e4e81af8fff25c65c2a1525e69a54fe0fadd Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 14:03:24 +0200 Subject: [PATCH 05/11] Test --- basilisk/tradebots_liquidity.c | 4 ++-- iguana/iguana777.h | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/basilisk/tradebots_liquidity.c b/basilisk/tradebots_liquidity.c index 3c4a9075f..7e21127aa 100755 --- a/basilisk/tradebots_liquidity.c +++ b/basilisk/tradebots_liquidity.c @@ -110,7 +110,7 @@ int32_t tradebots_calcrawfeatures(struct tradebot_arbpair *pair) } if ( n > sizeof(pair->rawfeatures)/sizeof(*pair->rawfeatures) ) { - printf("n.%d too many for rawfeatures %ld\n",n,sizeof(pair->rawfeatures)/sizeof(*pair->rawfeatures)); + printf("n.%d too many for rawfeatures %d\n",n,(int32_t)(sizeof(pair->rawfeatures)/sizeof(*pair->rawfeatures))); exit(-1); } return(n); @@ -160,7 +160,7 @@ struct tradebot_arbpair *tradebots_arbpair_create(char *base,char *rel) pair->fp = OS_appendfile(fname); if ( (ftell(pair->fp) % sizeof(pair->rawfeatures)) != 0 ) { - printf("misalinged rawfeatures %ld %ld\n",ftell(pair->fp),(ftell(pair->fp) % sizeof(pair->rawfeatures))); + printf("misalinged rawfeatures %d %d\n",(uint32_t)ftell(pair->fp),(uint32_t)(ftell(pair->fp) % sizeof(pair->rawfeatures))); } fseek(pair->fp,(ftell(pair->fp) / sizeof(pair->rawfeatures)) * sizeof(pair->rawfeatures) - sizeof(pair->rawfeatures),SEEK_SET); if ( fread(pair->rawfeatures,1,sizeof(pair->rawfeatures),pair->fp) == sizeof(pair->rawfeatures) ) diff --git a/iguana/iguana777.h b/iguana/iguana777.h index d39f498b5..682d3da13 100755 --- a/iguana/iguana777.h +++ b/iguana/iguana777.h @@ -21,13 +21,17 @@ #define iguana777_net_h #if defined(_WIN32) || defined(_WIN64) +#ifndef WIN32 #define WIN32 #endif +#endif #if (defined(_WIN32) || defined(__WIN32__)) && \ !defined(WIN32) && !defined(__SYMBIAN32__) +#ifndef WIN32 #define WIN32 #endif +#endif #ifdef WIN32 #define __MINGW From bfeb428664c797440d283f0e937ea39d5ae598a0 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 14:09:31 +0200 Subject: [PATCH 06/11] Test --- crypto777/curve25519.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crypto777/curve25519.c b/crypto777/curve25519.c index 5d2c24930..264d59952 100755 --- a/crypto777/curve25519.c +++ b/crypto777/curve25519.c @@ -1792,7 +1792,7 @@ void acct777_rwsig(int32_t rwflag,uint8_t *serialized,struct acct777_sig *sig) int32_t acct777_sigcheck(struct acct777_sig *sig) { #define IGUANA_GENESIS 1453075200 -#define IGUANA_MAXPACKETSIZE (1024 * 1024 * 2) +#define IGUANA_MAXPACKETSIZE (1024 * 1024 * 4) #define TEN_YEARS (10 * 365 * 24 * 3600) if ( sig->allocsize < sizeof(*sig) || sig->allocsize > IGUANA_MAXPACKETSIZE ) { From bc494ecabba23539951ed3621825c322857de49f Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 14:23:44 +0200 Subject: [PATCH 07/11] Test --- basilisk/basilisk.h | 4 ++-- basilisk/basilisk_swap.c | 3 ++- iguana/DB/SWAPS/1978010631-1500406169 | Bin 0 -> 101405 bytes iguana/DB/SWAPS/1978010631-1500406169.swap | Bin 0 -> 233496 bytes 4 files changed, 4 insertions(+), 3 deletions(-) create mode 100644 iguana/DB/SWAPS/1978010631-1500406169 create mode 100644 iguana/DB/SWAPS/1978010631-1500406169.swap diff --git a/basilisk/basilisk.h b/basilisk/basilisk.h index c25f11236..b15b9032f 100755 --- a/basilisk/basilisk.h +++ b/basilisk/basilisk.h @@ -60,9 +60,9 @@ struct basilisk_rawtx struct iguana_msgtx msgtx; struct basilisk_rawtxinfo I; struct iguana_info *coin; - char vinstr[4096]; + char vinstr[8192]; cJSON *vins; - uint8_t txbytes[8192],spendscript[512],redeemscript[1024],extraspace[1024]; + uint8_t txbytes[16384],spendscript[512],redeemscript[1024],extraspace[4096]; }; struct basilisk_swapinfo diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index 2ea0f4055..f4c24a2db 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -320,7 +320,7 @@ bits256 basilisk_swap_broadcast(char *name,struct supernet_info *myinfo,struct b int32_t _basilisk_rawtx_sign(struct supernet_info *myinfo,int32_t height,uint32_t timestamp,uint32_t locktime,uint32_t sequenceid,struct basilisk_rawtx *dest,struct basilisk_rawtx *rawtx,bits256 privkey,bits256 *privkey2,uint8_t *userdata,int32_t userdatalen,int32_t ignore_cltverr) { char *rawtxbytes=0,*signedtx=0,hexstr[999],wifstr[128]; cJSON *txobj,*vins,*item,*sobj,*privkeys; int32_t needsig=1,retval = -1; struct vin_info *V; - V = calloc(16,sizeof(*V)); + V = calloc(256,sizeof(*V)); V[0].signers[0].privkey = privkey; bitcoin_pubkey33(myinfo->ctx,V[0].signers[0].pubkey,privkey); privkeys = cJSON_CreateArray(); @@ -395,6 +395,7 @@ int32_t _basilisk_rawtx_sign(struct supernet_info *myinfo,int32_t height,uint32_ } else printf("error making rawtx\n"); free_json(privkeys); free_json(txobj); + free(V); return(retval); } diff --git a/iguana/DB/SWAPS/1978010631-1500406169 b/iguana/DB/SWAPS/1978010631-1500406169 new file mode 100644 index 0000000000000000000000000000000000000000..70b880155b90d87cb3c2c0277979dafca04194b0 GIT binary patch literal 101405 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�OdgGilGQ5Qiy$D|zsXq?G~tPrMO!_e=TP;Nn!g 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�!#sp2K0y6y5!x?9?>2&CY8tDTL%Ubs1zVN|fbw(>J{3R^p*vcbVO0obpr1GXTyI#dMlT`bw!wh|K-@~sM zVq2BT{w6|850#lDZtSc~7o{3`5Lxz&>5R*>gKqAbbu9fNEQAVz*LZ=8bGYOH#;WC7%132kZ7YvH_}<04usMvZ!(I#&Z( z>)0%V*tHsQ<~)KkbGH2zrjYO&iCN<8m}x=h*KoSl))1Ir(@e}|M~1719GT?2-mkUq zoyK^H+^%M|daieji(k_OF=qy9YPUFtz$7%o9PxiOb6l)>%A=4nm};wdKvLdHUf4SU)U0xaf4=C zZD_TD9S#plvqOG?ya7dkBN{gCG>*h8_(gy4v6R9;RI_ZZ7W6r9DXZ}bMCGB3;wD~7 ze8aSt;VrC%useKQWYhE8?I60F#oHggHqi=zi8@0ERy{;z(RLVfBG3d246t4(gVp;0 zv2s-`NYg2|<=-=u)_c}u53mPfiiPMVPqLwh_{;ChC)!-4)5<`xD586j*0WOCpwTLS z?R+C+%7R>rg$#`Xz#YL}M(C=zH3y#arQJ-IuB_E}``-2>7y4U7x14?3-RdVIoH-C0 zfC4vj$d8>#qTI`#m=>zJd?Z+wVE$5NX{pFiW`Xl>%ifLzI2bd}j9Dmi&D0~LGFJ`Y zHAF^W(^QMCP#e6o^yW^?47OCLlIZ9kxR~6YShB|uj1rB}^%!_dS)Y*e z+mYtN!@-ad9Q2Dpj}DDo!XEzn%wyy@7I^8h-6)?GyeN=9l+luV;_};_JQ$ch8o026Z2;;rS4iTI9_xAS zqj8`v+&wKbv2D%T?HpgaApyJ4fcHEVZOe{huj{8I;41?Yd^eI^fIq|GF08NXUg^)F zh;V&3dl28#%vT7(QL8s3d^!4$n8FPU$Une3U^O z@J8mtqrtjbk#eqs&dmE8V&vwPI8_#$3MrSadM2VS0@uyQRKfXv8aekRYW)Y2z`m}9|PYP$r$UJZ=bR6$a41!i8`P!d4qH-8U ziIn-l7HLnq`?IcRYyHO@eoNXOd$f8br=q}pt$*m#(D2SzU({5`#SFXs$oKXP+S@;E z3*R2&oK^&26f4%C+K}~J73TsH8|p1;_>2oOyxE0P$T9l8_Lz#GeueF5R!x)YMr3p3 z5(6P?y2ZmCs3-_56wyC46ZeeHOwMETEr9mP2M=D!aM3;I%6!T;ADb#Jt~+<+M`NuE z;+OO{TlRKKY4sO}j;8%WqiGZh+9y4*R{mWw!&0>s0sco_ITxs4XP)waFy*-HN*^Br zk#0k1_{_mZ{$RkeM8jT7WOti4TvOoMY0|lOnY9j*gQ+h(kNHNo5Vh; z9RN(|FF7}R<8L{7o*Og0VwgFz)-`B|{<@Qin37??cC<^0x4tM*%u3hJ+I*I*Bn3a% zf{=QcYqoJat?v*E%u3MV@j-rS{AN7fLjS>Gvy53#y!wPLz~htEsSOIaHejket9gUb#gdyZ(DM)hoGV#%nMVb z#lM5jsR7rTRhH3zQ*p6?&F6?lHXgUu%-*8Mj&oI;&gp0mT#v-QWpOK@aIU`gfu&bU zhHc6@_kd_k&W^W3$e!3_XWQM49}Tp5J&Kqwhp3`M(kH}fU^u$4WTFbRH=r^aCGD4m z&A5LouKxbws=)zVK7SgX^Qc(Vly7QF#7~Q+}o@I z7e~DK3*&TV`exBOq0?g2Freu^St1wu@7fIDlMRbAYx#JV8=H}8ji!08XwuNdqgAcD z5g0$WB(<{=tI&XWNopE_G^x0$k$H|3k>U`?S_P4emJ~^N_z!lRLn1bzN2IApcvIWC z&+Q>Wh|HEbkH_1=HCJ6I+w((de-k1b#Va5W)NyE26Ob>*zK-Km7`zxEW$0lHf-xF_ ztTcWuk3yDqf%SJw<9hy(Y_ZJ!=a0#IqkI6y5A9B+x->TY7$F^h#R35XE6B)0$p)MW zjs_>p*XnvcpL0ME#(Onk_~v!Usk}4$gi>$r(Z}1ih2^D^r9Kl^!Mj*eSFRyfT9fJ%vX4 zghQ|xgcv>nulikUm?n`7Lem0?^o%RHf>N&R`|wcYL(TEZPbAeR>rp>&oos|<|8->{PYl>1#E_08lLh3w5QwO z{M?XK`hSv7OkGn+lIBV?lON)zuFF8{BfG2YnQoOD;~owXc>_HMu48!%smAgT5OBw0d^& zFF#m{6`m3yZG%BP4@HFD4yP6uw2``cG+S8E#T_&C`*V%CamKazWEhjHL7);%45hPW z3*yqFG4u#~^z-!L*~f(wlsRVh*%!e~jJv2x3p5;5rT z7w6gMCn>vAGJs_{EGu+%F!06z!b67M`EW7iXWm$4!$m-y&B4D#)9vMV%{<1yPJ$x_ zk$rDQ_aB*%lG@y_i#_9^M@~J>*FJ9YUVsb5B6Plf>$cqTTbR=8&m+;&FEK)>9qC1z zMEJC=?z^LRRu{fa2knZ0D7K~!OhgB)30pa!y8;cVGv-$qP-L8$IU&_TUK28LxmGsi z)8B5p``KfJKg~*LR-m{^+ddzhs0YoqBxahNh%YkoJE^Y|Wi1&XJ`k^xdjSEHE{M>! zd64yq929#~T*7G^ypApJ`ctVR;M3T#;s^AB%8Wj`ELs39wt`86GeMJFp{)AITHir! zYv<%%RR|Sl;%}Q__K8;kOXby~sL<-!CG)KTgJTzYQz)J&s!txB6O2AAIUh+!LCw%; zVhu5aoYZ(usXfU@Rk~w=9#J?mvP*FSVnT>3!E9?m^;nUc= ze6&-setYE$+V`pL+xvvgYVzRAuC=(B|1rO;G`WnpGjX2t_Rl3ea$dz}sRkhZN}r=q zji)=>+q>*VJf%YvGdh%?d7ALfrH@Hlq7ng_CR=F>%Js8dq&OQ zuhj&(7J5g%S@<(cOC=v@I_h|O!U}$yz#Py(y`|8;DYjPgMvr|$1AC$PG7ifN5gDD> zJ%~eqLro9ecL`nGeXrW*6t`mVwft6o-fH{V0%~a-15nnGXA$duMq2CYB*Ba$2RLhq|?^BE^@`EO-;JJBv+ zgB(d#(wpU|hgxH-clrsLR-hu)!_f*-sla#F3$5y0W$zEmVS6T}-jL>kd7q(e3}9vW zO|_}$Ny^a~=YGGZsNdRIIco}g*s-E*fo+3ICWV#Wfajs%J9j^#eCZdk#E%RBf2C*t z{NW?pw06*Dg33^Sk`&WD7nO?Jn%<&!=;Is!sZLbldp@0YP2G*nF4Cm_oJeP)(?F=G ze;um3M5tNM%^oPYekpVMhP&I0GPd>&Z|G2s>@Li{@%6G`C8{KDWtWa4JJ#wk%@Br)0@-2qp7tSC7-s4Mp6b&y)M|O)wFmUZ5)C>kDo-$%QGJ%pavt0v9H2PrTMXeH7S&i zP{bQ<$_Wiv!}JCOdSytuJ!x`2G|C*s(}Hqf22@W{cvdJRY?Ca3PWwdP!;NN7$^p-3 z%LBmU{+7Mg`#p9iAXs6T#Ia?cM;C)o`jJUlz%r6 z_CJhZiM+l2qRMQ5ytJBVS9Q3O>XYFSBD-`$IUHL-c8G8PB%4{i?c+J+CXEsZK&+D1 z6Eq&b)#d;fIzQPXlw>betmhr zObU&(VKdK;7E0%uq<}&A?GXO?6VB0QZ(&v7MOLX4^H+|j_#UV3w|3&VKOh@-E6vt> zc`2rc6y5X|AxD_6(;*yaBjBffZi;-75KLjD_0wB#MD8#BEb?#Rr|6a0vYwS_t(-6$ z5hg11XHpY0z~5LMbl3iXCTS*1j4n_zszn5!fLJ*BYuKeQr_OBZ!%PKJZFn9Y$;ME} zxip+&4|l&% z#ip;Pfl+YNIRsX9nmTQJV9qd+-NL+w6k(~vr^XBPvpX=ZpH{~9&!FVILwKP!nDrjg zlhKXS4vCi+6;mDlO7&KVg0Db=)>}H!0oJSMv&z&taik1I;iC0k?Tc4=P844|4O5$N zk;T;s^yi42hA+l^Xl;fhopBe*c8q);%z1O$=T-;aQe6+lX<+Hg=E6UW+8YVE3;q-(3N4$i!Jm0>K0qpdO{|0LJ#5xhL`@8Muk9y zCXl%f1X!a^guWmt#^?~7hGm7R`OJ^r=yonSHr`xKKVA0298! z`-9#RxL4_Fw}~1K-YYm>VdgEgme^x^;-?yl2`>AD!o3zXWWX7#wb0y8VLYtOdL(L- z9tDG+5R57Z5>wB)2N*PN{BxDZoW@z)R5^07-7X!2-xe@hm=avos#&CS143^3L|yeh z469uIP;FaLZhpIuZxH*ZQ#)la^_7`Qy+Nr^xCptvr-1$}ky3~wqcE`V6S|Ayo+K)2 ziTeJ`Wl9<({Y?DzgC(h0jkp4De&V>K1g4eh%}tc7LD)<7cKb-3x#8!e48lR3QKYgN z??v7SKe?^|qEp>+O0K~Bq0Zdl=^lGLdidt!cscdxnCG~j?3HQ$P%E~~xFi;hTpSwu zC=&JIMy`f1bMFo7y}{0Nfh%2^JGc~jTU^3y7`Qi}4sey-l6vMrXtLzabwkOdyRnHw zzL8#T9_3n5F z52`A=6(jXzgX|Apeb&|DM^(faD8C&3@0Gp1j+LF)%u%|gZ3;8C_Y4`Ly-wO<`U#6J zUX79=Gn45#_TXlQ^nK;A17gR8qJ8{i@T}kd&Aab2sj`@oEN_kzR)B%yhGLC>2{LDm zwfcsk3R~F+B{o^K(Y0{469i)F)M@E5#-BTLY)DjMDPKA$oUwSOYVhVU@>SQ<&!A#91($U}6tBGuubl3aHj=soL1y zp8)-lL}-jC6S(U`B$05n^HOi-e9A;HQ&27pBx(mt)hg)B3O_0vheao-r?I6f*j+`a zObbQ`8fkSt>Wp$|_Z9bw3^%g25FWelJSF+QJX7R{S81gc!7ImN!65c>(QOFswvvPD z4W>I6?D?$J*X{sUUIH^1gg!GMr}`W)cn5hDjZhScvv00*>n2VByM2f0$Ak!xpKr5g zCNa1-Rh@6#6oznbCfz6_PWliR{8OK8+rK&wa?YssX*YbBB8raI89{!bo@9a_F*KPm z@{D4TRkE{TCHo|`{(50*kPKjgylEn{wY5P-jCcq}3%5*?PlrT~a|o6Z8b-Y~Iylkc z3M_EzTp75a1EsMUsT8mxtQ-a(Jp%8QMrzfEEX+XpxC)|djXUR& zC7B!7Xyb2gE8Q>19XNOxY|1@Lv@g@6v;&3vxwa84dBU|n6W~Os5$jl+H`G$b`DwLKv_f@!k0isCcS*=9Kj_^D zjoOn;XraY<{UDWa_iRHi2}KK^&D#ef}T$Z^l$_x*cFDusW#-kP# z!sLlZ{!5{1UZWwC8iJybsz^M`FiDXiI~oGVKB+d;;-P?mHN8MC-2YnUD!O{5TWh3+ zKq~PYm-KnRwL|dy%R0VAiS;B*LA7O(x5pys%2Db2n6)~0+Jf9a?5UDQ46hAP$T!1$ z!^1Yt#8~cBjkY+a&lel9LO_F(R< z!6sHUecSV!(X$f2JB)bKb;fW}?eu{aZf~4jiat2Op^x5FxigM)@_jJK@8rMmX5AF0 zUuse$1`Qe+{#8d7y6DsC(-em|;px8K^)<*=iqK*QYt&;iy~qOVR4R1*BLK+Uof!p$ z#WH3r0eJf{zJ1p9>^m}OIb&4O=jU`_V(Tc;6RoS_gGNff=Rae@+s@^GmJ~(U4{RJ= zihF`9NP?bXr^CHC+kuNmX1dtgI6V5^lEk5Jb)lFhTh9=&JXg3lBqZCd>FK9|@|Fok zrKHr>fPRx!ec*@XO+syMZE@Qwb+0Ln(rE2#_6H5?grdz@K25_gsnxa*x**5h$Y!j#vj9aG|b5ApBopO z0HGDjDzhyxBx>t@bh>o(O{ZHR;M+V)B|x40KH&I1$_Vn00eFU_udn~Gy{@?cvsV`~ z`ze8hO>}e3w&o$)yV?_tXF!P>G4MUT=YTI!Cm0-y-2}i?u4?4PZn|ie8q&ES7inGM z_2=qZZJJrFNJ%R&E^qxpArM$lS;8yKc6vUU2j)vt(vx%wBWYx}GZE7jGmT>c1BCGF z)rfN6$+MXfAp)z4Y?=dBIT7xFV-1&%^cHkk!~=55mfE3$t0m$*ec-N7mI_gyl3nPG zuiBXEq5>uHsY>sh4nW~0mzk>_48>7Z95k43K3IX+yS$+~+Rnbz(Wx}X#W}aQ$akSe zG@K^VZTKKm9<&24^tTazdn4#BG58hL00d`ozFk7gm6Io zP2u)ilM5T)iZs?2r_=1$R~ne9A15DBVisa*DAi3-c_mNPDL1njCy(YurN}qSDYx_L zuU6hHDDt>n*h~!g4_V$m!Mau(=u(IG9;wOOCo|en|E1h-Pjdo7AeOX5g zQ6J~QL74V|+_x8r3@^V+c1$>z&2e1FKDg_bPTmSpW2}ieG>&o>yYJn6mQ^m=Kd(~T zoQ8;|P`s}g`H44KgbgsRg*0KJ zONxcJ))CA>D@|A>srlAo1AEEN7O!QckCg#CpT%dgm22&W_=J42!x=}b3NDMtML_I2 z?WKa;3W7ZO77)93fSRD|({GzXfX)FvvMS)8PUucAJsQB|og}IH zG#M~GBmGAKul>1M-EZ9YKfc5W2Icq{_GTze_#cr7cLglw$4QRFQyv<|rgV?ge6u;gj<2P|iBlhMY)<_xU7IIdROCe~6WzIcM%W1L5@b zW+r$zDJXA}ep_^V9A_P;|Gh_?e-1fD5o+8!WNPIU_+$>aojXK^017_Kp`gXa~RF}OG$MQ z0b6;1@wM%{+k$-x=p0^Io;W7M5avND6miPZl>L34N++5*P$ksDG@)9Rw#7TyPLMkc z9PMPXMe@OE5QUE)NX}J)19ZxF>#V($0WyACxM&}nG70Ezrf1X@$O_0gdlp4#kbB=W z#VPF55G9q{h&~6LOOWWPn)OZT15VqP`;x?Y*!x}mYIw-T?rYzE*WUv7stjK1Zo=nB zAZ00Tn-Ex3 z>MH(u^k+VK{pJS5AV4wtr%cnBo&I+iUMuY(4A$8<{I|DY17E4IS-+T@mAgYeI#&Y& zV0Q(455anY)MAO5XUbvvgn&NVqz$wx5`mia;>4e!O0{KSIK7aE>NY~c5z{sK{DbT~p*uFCG&<0G=#cz9*BHZC&BYAte@WL-qY zFH!*CNNK5=Mm7Lk3#RjDlI@LA_fe{PDSr<3kZApFfhowW-7=hcDVG>@wf&6p;e?3I zG}vZ+7IFs=-R1O5t|m56N%)d14Zvw^D`x+of?t}Zj)`!#8Z`GYwDx|`=3T+rI_4%aoiocgvrlnfBU zS<)ZPthZ`Px6iwhKV@twTkv}nz!J)kflq@GF32b)id;TVh zk5U$X^>8LdIBvYB3oixwTQk#kUNQjIqO&;2wGvv~EV&ohL|m^tRUs`EE~y#Y7`*q` z%1s0AuXgE4*JYZs%c9ZW=LJt_jnwzt=RdhNGK|a4hZvmS`LF;|2=NIgKia-7dap@G zqrc0~7bSMWJU+&YlS@2Fe-Gq~%3XSSHHHTF08N9>f})@sgo>woeQmLB^TJHM35TTt zbhNQl=a|CV^h}wwB3a@>U+_k}7D}^$;rY$aTn+TA>hwpkMwJo|hqj7Im2} z*r0Nln|Fv~R$>4$%y*~8Hf_JCWIN(XFc2HF7bKv0i)LjEHeHNY`*{pqxHRCq6CTHJ z?rj9!x&Jp4SQ}PDqGm+KjLpyPtzRhC49xtWiG#=NVJOvW_Vme4TqN?p{xuYbbk zZ%!seyu+wrKa-wrvk=${{-?FtFW6zie}W?ZvwrFsOBvNSF-v2KB`FD-^eESQIsAPPhX@Df^>Cgb1G%KV6PJ8yfN=T`rzJD?Vv8PN4015*6Io#*>=5xxaYHwIx~ zt26s5ah!|wSNj>GJil)2r@~!E|6Ozd*pPqQ{+HE;l*~}VhgJUT>;I|q zuGR#gT4tp<%>q{s#E3PL|>fB0vPcuaoTx zVp|y4&xp2m@cViM*ng@eC{c8iF`f%m)7mBj5#Y69hzEri6zg|nFBWaGYrl%WF5yfP zjP1td=(s?6MEt`adSlayIFoE?XZU@~$ss%P4n(Q2YRaEI@3CO%nefXFr~g8t_G)m> z$1K!>Uv;{5GV&Q9zUo%*Vy-1Wjj|~gNp)2MBH(`g)wUDQ98i})AHbyMv5&bjtc<2H z=DUhb(~ajh?Dh|lJ``t(?+;flS3Y~k)K+&y+x^4bLk^zLM=Q75;q#)b{|iaH>(8|# z>hF@-QnBy3XMECGsOY%<5K&6`N@vZ&qFEgv0-z`@s(=egqM3d|de%?i5uO`H__*RX ze#{O}53*J5C+`Uq~J`pE>qV z^%1e-chKRHoRhH?NwNA5KseGq9OEow{24$5sEy*}VrciuxTJR3i`W4^SXLhj(%Xsp zw)U@U?SJ7i{vpx@&y3@^C3MT!kmRrXSrWAD7-m!hfT%VvD20loEa%(*Lh?R(Q7i1^ z|GP55ajLE45%@3w@Q8sD<(BvWoOz&ij{roV1#8a58>4pyx8sH%j5-8c^&M{N2|U3E z-vQ31RhqN<50PL7&hU#AOVJ6!b0vUp;B99iH^d%2|66nz4Ig1tFD%1t*>KA z!KpWzC<9%|{zImv5k^O{(yKMt0@jJlH3o=41CePt98r?W2&^-%V6pv!4-ZCpOMux1 z@qq!u{@h#sA0kauMtg=|WBuej3de5@j-@8Jh{IT}`%Km$na01h&ZPTqZkh|&*$oHd z*%zUAk{PGcZT-TSoyvCr-=#=>r(_k#iUK0Ay8-1!wMSdtksLc#yBW=BMwZjL5^xTg z`?^<|eP8AKhfL#RzKHjQU;TfBb2=BHo58YGa@2%L(p}il(m4#&7}@?CQ#B7I96l~*l`!W#h6SVCi5p7~(j{)b@TLYYb=}84fhoKF-}B{v%mk}~4%;G5 zkZ9)NqbUBp^$#_B3~GP(7rPVnTI4fRR-6N*U4epTai`FuOxEq#jG{euKAEm(m=BJaj#;}$C zLWd3j>)e>A(ssG(j0WP(IIM?rf*|Tam)V~cmnoa5gW(9TW8ArD>*m*;6+4l+uFa+p zJF%{|tczgXKV;hW7Qacw<wSNXR1aoL&4GYxZvG$a;57>xmL}l;U;F>a-9mJot6sv37yS$}A11P|<bwS;-PsyT4)iOS}$im9EL4v^jWd VbMrr-U*Jv60I!4Kj^BTv4*@nhP22zg literal 0 HcmV?d00001 diff --git a/iguana/DB/SWAPS/1978010631-1500406169.swap b/iguana/DB/SWAPS/1978010631-1500406169.swap new file mode 100644 index 0000000000000000000000000000000000000000..39f4c98d066ca6e86a43a9064007ebe440c7352d GIT binary patch literal 233496 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 literal 0 HcmV?d00001 From 3618a01fd71e8e20cae7bc423e3cf4d17210e300 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 14:24:09 +0200 Subject: [PATCH 08/11] Test --- iguana/DB/SWAPS/1978010631-1500406169 | Bin 101405 -> 0 bytes iguana/DB/SWAPS/1978010631-1500406169.swap | Bin 233496 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 iguana/DB/SWAPS/1978010631-1500406169 delete mode 100644 iguana/DB/SWAPS/1978010631-1500406169.swap diff --git a/iguana/DB/SWAPS/1978010631-1500406169 b/iguana/DB/SWAPS/1978010631-1500406169 deleted file mode 100644 index 70b880155b90d87cb3c2c0277979dafca04194b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101405 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�OdgGilGQ5Qiy$D|zsXq?G~tPrMO!_e=TP;Nn!g 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�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 VbMrr-U*Jv60I!4Kj^BTv4*@nhP22zg diff --git a/iguana/DB/SWAPS/1978010631-1500406169.swap b/iguana/DB/SWAPS/1978010631-1500406169.swap deleted file mode 100644 index 39f4c98d066ca6e86a43a9064007ebe440c7352d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 233496 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 From 555a37ab0fd45399e2c20b467192fcb3e5c6810d Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 15:09:02 +0200 Subject: [PATCH 09/11] Test --- basilisk/basilisk_swap.c | 39 +++++++++++++++++++------------------- iguana/tests/cancelrefresh | 2 ++ 2 files changed, 22 insertions(+), 19 deletions(-) create mode 100755 iguana/tests/cancelrefresh diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index f4c24a2db..e68ea0a39 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -1082,7 +1082,7 @@ void basilisk_swaps_init(struct supernet_info *myinfo) while ( fread(&M,1,sizeof(M),fp) == sizeof(M) ) { M.data = 0; - printf("entry iter.%d crc32.%x datalen.%d\n",iter,M.crc32,M.datalen); + //printf("entry iter.%d crc32.%x datalen.%d\n",iter,M.crc32,M.datalen); if ( M.datalen < 100000 ) { M.data = malloc(M.datalen); @@ -1381,10 +1381,10 @@ void basilisk_swap_saveupdate(struct supernet_info *myinfo,struct basilisk_swap { FILE *fp; char fname[512]; sprintf(fname,"%s/SWAPS/%u-%u.swap",GLOBAL_DBDIR,swap->I.req.requestid,swap->I.req.quoteid); - if ( (fp= fopen(fname,"wb")) != 0 ) + if ( 0 && (fp= fopen(fname,"wb")) != 0 ) { fwrite(&swap->I,1,sizeof(swap->I),fp); - fwrite(&swap->bobdeposit,1,sizeof(swap->bobdeposit),fp); + /*fwrite(&swap->bobdeposit,1,sizeof(swap->bobdeposit),fp); fwrite(&swap->bobpayment,1,sizeof(swap->bobpayment),fp); fwrite(&swap->alicepayment,1,sizeof(swap->alicepayment),fp); fwrite(&swap->myfee,1,sizeof(swap->myfee),fp); @@ -1394,7 +1394,7 @@ void basilisk_swap_saveupdate(struct supernet_info *myinfo,struct basilisk_swap fwrite(&swap->bobreclaim,1,sizeof(swap->bobreclaim),fp); fwrite(&swap->bobspend,1,sizeof(swap->bobspend),fp); fwrite(&swap->bobrefund,1,sizeof(swap->bobrefund),fp); - fwrite(&swap->alicereclaim,1,sizeof(swap->alicereclaim),fp); + fwrite(&swap->alicereclaim,1,sizeof(swap->alicereclaim),fp);*/ fwrite(swap->privkeys,1,sizeof(swap->privkeys),fp); fwrite(swap->otherdeck,1,sizeof(swap->otherdeck),fp); fwrite(swap->deck,1,sizeof(swap->deck),fp); @@ -1413,7 +1413,7 @@ int32_t basilisk_swap_loadtx(struct basilisk_rawtx *rawtx,FILE *fp,char *bobcoin rawtx->coin = iguana_coinfind(rawtx->I.coinstr); if ( rawtx->vinstr[0] != 0 ) rawtx->vins = cJSON_Parse(rawtx->vinstr); - printf("loaded.%s\n",rawtx->name); + printf("loaded.%s len.%d\n",rawtx->name,rawtx->I.datalen); return(0); } } @@ -1426,6 +1426,7 @@ struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 priv if ( reinit != 0 ) { sprintf(fname,"%s/SWAPS/%u-%u.swap",GLOBAL_DBDIR,swap->I.req.requestid,swap->I.req.quoteid); + printf("reinit.(%s)\n",fname); if ( (fp= fopen(fname,"rb")) != 0 ) { fread(&swap->I,1,sizeof(swap->I),fp); @@ -1433,9 +1434,9 @@ struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 priv swap->bobcoin = iguana_coinfind(swap->I.req.dest); if ( swap->alicecoin == 0 ) swap->alicecoin = iguana_coinfind(swap->I.req.src); - if ( swap->alicecoin != 0 && swap->bobcoin == 0 ) + if ( swap->alicecoin != 0 && swap->bobcoin != 0 ) { - basilisk_swap_loadtx(&swap->bobdeposit,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); + /*basilisk_swap_loadtx(&swap->bobdeposit,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); basilisk_swap_loadtx(&swap->bobpayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); basilisk_swap_loadtx(&swap->alicepayment,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); basilisk_swap_loadtx(&swap->myfee,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); @@ -1445,13 +1446,13 @@ struct basilisk_swap *bitcoin_swapinit(struct supernet_info *myinfo,bits256 priv basilisk_swap_loadtx(&swap->bobreclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); basilisk_swap_loadtx(&swap->bobspend,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); basilisk_swap_loadtx(&swap->bobrefund,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - basilisk_swap_loadtx(&swap->alicereclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol); - fread(swap->privkeys,1,sizeof(swap->privkeys),fp); - fread(swap->otherdeck,1,sizeof(swap->otherdeck),fp); - fread(swap->deck,1,sizeof(swap->deck),fp); + basilisk_swap_loadtx(&swap->alicereclaim,fp,swap->bobcoin->symbol,swap->alicecoin->symbol);*/ } else printf("missing coins (%p %p)\n",swap->bobcoin,swap->alicecoin); + fread(swap->privkeys,1,sizeof(swap->privkeys),fp); + fread(swap->otherdeck,1,sizeof(swap->otherdeck),fp); + fread(swap->deck,1,sizeof(swap->deck),fp); fclose(fp); - } + } else printf("cant find.(%s)\n",fname); } else { @@ -1880,8 +1881,10 @@ int32_t basilisk_swapiteration(struct supernet_info *myinfo,struct basilisk_swap if ( (swap->I.otherstatebits & 0x80) == 0 ) basilisk_swapdata_rawtxsend(myinfo,swap,0x80,data,maxlen,&swap->myfee,0x40,0); } + basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && time(NULL) < swap->I.expiration ) // both sides have setup required data and paid txfee { + basilisk_swap_saveupdate(myinfo,swap); if ( swap->connected == 0 ) basilisk_psockinit(myinfo,swap,swap->I.iambob != 0); //if ( (rand() % 30) == 0 ) @@ -1919,7 +1922,7 @@ int32_t basilisk_swapiteration(struct supernet_info *myinfo,struct basilisk_swap swap->I.statebits |= basilisk_swapdata_rawtxsend(myinfo,swap,0x8000,data,maxlen,&swap->bobpayment,0x4000,0); } // [BLOCKING: privM] Bob waits for privAm either from Alice or alice blockchain - else if ( (swap->I.statebits & 0x40000) == 0 ) + else if ( (swap->I.statebits & 0xc0000) != 0xc0000 ) { if ( basilisk_swapget(myinfo,swap,0x40000,data,maxlen,basilisk_verify_privi) == 0 || basilisk_privAm_extract(myinfo,swap) == 0 ) // divulges privAm { @@ -2192,7 +2195,6 @@ void basilisk_swaploop(void *_swap) printf("couldnt establish connection\n"); retval = -1; } - basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && (swap->I.statebits & 0x20) == 0 && time(NULL) < expiration ) { if ( swap->connected == 0 ) @@ -2215,7 +2217,6 @@ void basilisk_swaploop(void *_swap) myinfo->DEXactive = 0; } printf("C r%u/q%u swapstate.%x retval.%d\n",swap->I.req.requestid,swap->I.req.quoteid,swap->I.statebits,retval); - basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && (swap->I.statebits & 0x40) == 0 ) // send fee { if ( swap->connected == 0 ) @@ -2313,20 +2314,19 @@ void basilisk_swaploop(void *_swap) } } } - basilisk_swap_saveupdate(myinfo,swap); while ( retval == 0 && basilisk_swapiteration(myinfo,swap,data,maxlen) == 0 ) { sleep(DEX_SLEEP); basilisk_sendstate(myinfo,swap,data,maxlen); basilisk_swapget(myinfo,swap,0x80000000,data,maxlen,basilisk_verify_otherstatebits); + basilisk_swap_saveupdate(myinfo,swap); if ( time(NULL) > swap->I.expiration ) break; } - basilisk_swap_saveupdate(myinfo,swap); - printf("end of atomic swap\n"); if ( swap->I.iambob != 0 && swap->bobdeposit.I.datalen != 0 ) { - sleep(300); // wait for confirm of msig + printf("BOB waiting for confirm\n"); + sleep(60); // wait for confirm/propagation of msig printf("BOB reclaims refund\n"); basilisk_bobdeposit_refund(myinfo,swap,0); if ( basilisk_swapdata_rawtxsend(myinfo,swap,0,data,maxlen,&swap->bobrefund,0x40000000,0) == 0 ) // use secretBn @@ -2342,6 +2342,7 @@ void basilisk_swaploop(void *_swap) } basilisk_swap_saveupdate(myinfo,swap); } + printf("end of atomic swap\n"); if ( swapcompleted(myinfo,swap) > 0 ) // only if swap completed { if ( swap->I.iambob != 0 ) diff --git a/iguana/tests/cancelrefresh b/iguana/tests/cancelrefresh new file mode 100755 index 000000000..35c27504d --- /dev/null +++ b/iguana/tests/cancelrefresh @@ -0,0 +1,2 @@ +#!/bin/bash +curl --url "http://127.0.0.1:7778" --data "{\"agent\":\"basilisk\",\"method\":\"cancelrefresh\"}" From 13e29b20ff5a7c8c6ca971a2b3c8ae682995cd3a Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 15:17:59 +0200 Subject: [PATCH 10/11] Test --- basilisk/basilisk_swap.c | 2 +- iguana/iguana_payments.c | 4 ++-- iguana/iguana_sign.c | 8 ++++---- iguana/iguana_unspents.c | 6 +++--- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index e68ea0a39..d9f17db61 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -352,7 +352,7 @@ int32_t _basilisk_rawtx_sign(struct supernet_info *myinfo,int32_t height,uint32_ needsig = 0; #endif } - printf("rawtx B\n"); + //printf("rawtx B\n"); if ( bits256_nonz(rawtx->I.actualtxid) != 0 ) jaddbits256(item,"txid",rawtx->I.actualtxid); else jaddbits256(item,"txid",rawtx->I.signedtxid); diff --git a/iguana/iguana_payments.c b/iguana/iguana_payments.c index 8e7aacf20..196c3a313 100755 --- a/iguana/iguana_payments.c +++ b/iguana/iguana_payments.c @@ -175,7 +175,7 @@ int32_t iguana_RTbestunspent(struct supernet_info *myinfo,struct iguana_info *co } if ( iguana_RTunspent_check(myinfo,coin,unspents[i]) != 0 ) { - printf("(%d u%d) %.8f already used\n",unspents[i].hdrsi,unspents[i].unspentind,dstr(atx_value)); + //printf("(%d u%d) %.8f already used\n",unspents[i].hdrsi,unspents[i].unspentind,dstr(atx_value)); continue; } if ( maxmode == 0 ) @@ -289,7 +289,7 @@ char *iguana_signrawtx(struct supernet_info *myinfo,struct iguana_info *coin,int if ( flag != 0 ) free_json(privkeys); } - char str[65]; printf("completed.%d %s signed.(%s)\n",*completedp,bits256_str(str,*signedtxidp),signedtx!=0?signedtx:""); + //char str[65]; printf("completed.%d %s signed.(%s)\n",*completedp,bits256_str(str,*signedtxidp),signedtx!=0?signedtx:""); return(signedtx); } diff --git a/iguana/iguana_sign.c b/iguana/iguana_sign.c index c502e1465..43afba477 100755 --- a/iguana/iguana_sign.c +++ b/iguana/iguana_sign.c @@ -687,7 +687,7 @@ int32_t iguana_rwmsgtx(struct iguana_info *coin,int32_t height,int32_t rwflag,cJ { iguana_vinobjset(&msg->vins[i],jitem(vins,i),spendscript,sizeof(spendscript)); sigtxid = bitcoin_sigtxid(coin,height,sigser,maxsize*2,msg,i,msg->vins[i].spendscript,msg->vins[i].spendlen,SIGHASH_ALL,vpnstr,suppress_pubkeys); - printf("after vini.%d vinscript.%p spendscript.%p spendlen.%d (%s)\n",i,msg->vins[i].vinscript,msg->vins[i].spendscript,msg->vins[i].spendlen,jprint(jitem(vins,i),0)); + //printf("after vini.%d vinscript.%p spendscript.%p spendlen.%d (%s)\n",i,msg->vins[i].vinscript,msg->vins[i].spendscript,msg->vins[i].spendlen,jprint(jitem(vins,i),0)); jaddi(vinarray,iguana_vinjson(coin,&msg->vins[i],sigtxid)); if ( msg->vins[i].spendscript == spendscript ) msg->vins[i].spendscript = 0; @@ -1013,13 +1013,13 @@ int32_t bitcoin_verifyvins(struct iguana_info *coin,int32_t height,bits256 *sign { flag++; numsigs++; - int32_t z; + /*int32_t z; for (z=0; zsigners[j].pubkey[z]); - printf(" <- pub, SIG.%d.%d VERIFIED numsigs.%d vs M.%d\n",vini,j,numsigs,vp->M); + printf(" <- pub, SIG.%d.%d VERIFIED numsigs.%d vs M.%d\n",vini,j,numsigs,vp->M);*/ } } if ( numsigs >= vp->M ) @@ -1435,7 +1435,7 @@ int32_t iguana_signrawtransaction(struct supernet_info *myinfo,struct iguana_inf } } } - printf("type.%d p2sh.[%d] -> %s M.%d N.%d\n",type,i,mvin.coinaddr,mvin.M,mvin.N); + //printf("type.%d p2sh.[%d] -> %s M.%d N.%d\n",type,i,mvin.coinaddr,mvin.M,mvin.N); } } if ( i < V->N ) diff --git a/iguana/iguana_unspents.c b/iguana/iguana_unspents.c index 19db61d54..773f6f431 100755 --- a/iguana/iguana_unspents.c +++ b/iguana/iguana_unspents.c @@ -913,7 +913,7 @@ void iguana_unspents_mark(struct supernet_info *myinfo,struct iguana_info *coin, { if ( firstslot >= 0 ) { - printf("slot.[%d] <- %s/v%d\n",firstslot,bits256_str(str,txid),vout); + //printf("slot.[%d] <- %s/v%d\n",firstslot,bits256_str(str,txid),vout); coin->markedunspents[firstslot] = txid; coin->markedunspents[firstslot].ushorts[15] = vout; if ( (0) && coin->utxofp == 0 ) @@ -949,7 +949,7 @@ return; { if ( firstslot >= 0 ) { - char str[65]; printf("%s slot.[%d] <- %s/v%d\n",fname,firstslot,bits256_str(str,filetxid),filevout); + //char str[65]; printf("%s slot.[%d] <- %s/v%d\n",fname,firstslot,bits256_str(str,filetxid),filevout); coin->markedunspents[firstslot] = filetxid; coin->markedunspents[firstslot].ushorts[15] = filevout; } @@ -975,7 +975,7 @@ return; { if ( firstslot >= 0 ) { - char str[65]; printf("slot.[%d] <- %s/v%d\n",firstslot,bits256_str(str,filetxid),filevout); + //char str[65]; printf("slot.[%d] <- %s/v%d\n",firstslot,bits256_str(str,filetxid),filevout); coin->markedunspents[firstslot] = filetxid; coin->markedunspents[firstslot].ushorts[15] = filevout; } From c30351aa69ac66ccda8e40caf7a4ebd1cbf697f4 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 11 Mar 2017 15:26:37 +0200 Subject: [PATCH 11/11] Test --- basilisk/basilisk_swap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index d9f17db61..e8ee6438a 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -1037,9 +1037,9 @@ void basilisk_swapgotdata(struct supernet_info *myinfo,struct basilisk_swap *swa FILE *basilisk_swap_save(struct supernet_info *myinfo,struct basilisk_swap *swap,bits256 privkey,struct basilisk_request *rp,uint32_t statebits,int32_t optionduration,int32_t reinit) { - FILE *fp; char fname[512]; + FILE *fp=0; char fname[512]; sprintf(fname,"%s/SWAPS/%u-%u",GLOBAL_DBDIR,rp->requestid,rp->quoteid), OS_compatible_path(fname); - if ( (fp= fopen(fname,"rb+")) == 0 ) + if ( 0 && (fp= fopen(fname,"rb+")) == 0 ) { if ( (fp= fopen(fname,"wb+")) != 0 ) {