From a61dc0df730259a4f1cc53ff8ab0a78f87a09dcd Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 21:51:58 +0200 Subject: [PATCH 01/11] Test --- iguana/dpow/dpow_network.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/iguana/dpow/dpow_network.c b/iguana/dpow/dpow_network.c index bdfe03bd3..d826f6424 100755 --- a/iguana/dpow/dpow_network.c +++ b/iguana/dpow/dpow_network.c @@ -287,13 +287,13 @@ char *_dex_reqsend(struct supernet_info *myinfo,char *handler,uint8_t *key,int32 { timeout = 1000; nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_SNDTIMEO,&timeout,sizeof(timeout)); - timeout = 500; - nn_setsockopt(reqsock,NN_TCP,NN_RECONNECT_IVL,&timeout,sizeof(timeout)); - timeout = 1000; + //timeout = 1500; + //nn_setsockopt(reqsock,NN_TCP,NN_RECONNECT_IVL,&timeout,sizeof(timeout)); + timeout = 3000; nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_RCVTIMEO,&timeout,sizeof(timeout)); - prio = 1; - nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_SNDPRIO,&prio,sizeof(prio)); - nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_RCVPRIO,&prio,sizeof(prio)); + //prio = 1; + //nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_SNDPRIO,&prio,sizeof(prio)); + //nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_RCVPRIO,&prio,sizeof(prio)); for (i=0; idexseed_ipaddrs)/sizeof(*myinfo->dexseed_ipaddrs); i++) { if ( nn_connect(reqsock,nanomsg_tcpname(0,str,myinfo->dexseed_ipaddrs[i],REP_SOCK)) < 0 ) @@ -303,9 +303,9 @@ char *_dex_reqsend(struct supernet_info *myinfo,char *handler,uint8_t *key,int32 break; } } - prio = 8; - nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_SNDPRIO,&prio,sizeof(prio)); - nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_RCVPRIO,&prio,sizeof(prio)); + //prio = 8; + //nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_SNDPRIO,&prio,sizeof(prio)); + //nn_setsockopt(reqsock,NN_SOL_SOCKET,NN_RCVPRIO,&prio,sizeof(prio)); } if ( reqsock >= 0 ) { From 7edf59ae1903887901963c4e6c6dd8e6c6ca36fc Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 21:52:23 +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 d826f6424..5183ea053 100755 --- a/iguana/dpow/dpow_network.c +++ b/iguana/dpow/dpow_network.c @@ -1984,7 +1984,7 @@ int32_t dpow_nanomsg_update(struct supernet_info *myinfo) if ( (flags & 4) == 0 && (size= nn_recv(myinfo->repsock,&dexp,NN_MSG,0)) > 0 ) { num2++; - //printf("REP got %d crc.%08x\n",size,calc_crc32(0,(void *)dexp,size)); + printf("REP got %d crc.%08x\n",size,calc_crc32(0,(void *)dexp,size)); if ( (retstr= dex_response(&broadcastflag,myinfo,dexp)) != 0 ) { signed_nn_send(myinfo,myinfo->ctx,myinfo->persistent_priv,myinfo->repsock,retstr,(int32_t)strlen(retstr)+1); From a2788be1cd6cb9792c18e14a9faebce68cf6e85f Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 21:54:17 +0200 Subject: [PATCH 03/11] Test --- iguana/main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/iguana/main.c b/iguana/main.c index c0d231e3b..dbbb18958 100755 --- a/iguana/main.c +++ b/iguana/main.c @@ -485,7 +485,10 @@ void mainloop(struct supernet_info *myinfo) usleep(30000); } if ( myinfo->DEXEXPLORER != 0 ) + { kmd_bitcoinscan(); + usleep(100000); + } //pangea_queues(SuperNET_MYINFO(0)); //if ( flag == 0 ) // usleep(100000 + isRT*100000 + (numpeers == 0)*1000000); From 06b115b836dfcf0a2f2ea317f943bd5a6a6e06dc Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 21:59:37 +0200 Subject: [PATCH 04/11] Test --- crypto777/bitcoind_RPC.c | 2 +- iguana/kmd_lookup.h | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/crypto777/bitcoind_RPC.c b/crypto777/bitcoind_RPC.c index 18ebe16cc..66886df69 100755 --- a/crypto777/bitcoind_RPC.c +++ b/crypto777/bitcoind_RPC.c @@ -140,7 +140,7 @@ char *bitcoind_RPC(char **retstrp,char *debugstr,char *url,char *userpass,char * else specialcase = 0; if ( url[0] == 0 ) strcpy(url,"http://127.0.0.1:7776"); - if ( specialcase != 0 && (0) ) + //if ( specialcase != 0 && (0) ) printf("<<<<<<<<<<< bitcoind_RPC: debug.(%s) url.(%s) command.(%s) params.(%s)\n",debugstr,url,command,params); try_again: if ( retstrp != 0 ) diff --git a/iguana/kmd_lookup.h b/iguana/kmd_lookup.h index 5499864f6..367b28e2a 100755 --- a/iguana/kmd_lookup.h +++ b/iguana/kmd_lookup.h @@ -203,7 +203,7 @@ FILE *kmd_txidinit(struct iguana_info *coin) { if ( (tx= kmd_transactionalloc(T.txid,T.height,T.timestamp,T.numvouts,T.numvins)) != 0 ) { - //printf("INIT %s.[%d] vins.[%d] ht.%d %u\n",bits256_str(str,T.txid),T.numvouts,T.numvins,T.height,T.timestamp); + printf("INIT %s.[%d] vins.[%d] ht.%d %u\n",bits256_str(str,T.txid),T.numvouts,T.numvins,T.height,T.timestamp); if ( (ptr= kmd_transactionadd(coin,tx,T.numvouts,T.numvins)) != 0 ) { if ( ptr != kmd_transaction(coin,tx->txid) ) @@ -748,6 +748,7 @@ void kmd_bitcoinscan() { //if ( strcmp("KMD",coin->symbol) == 0 ) _kmd_bitcoinscan(coin); + usleep(100000); } } } From a68b957d9d502c83f17ffbb8f89767c1a0f7ebfd Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 22:01:17 +0200 Subject: [PATCH 05/11] Test --- iguana/kmd_lookup.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iguana/kmd_lookup.h b/iguana/kmd_lookup.h index 367b28e2a..c2d987c80 100755 --- a/iguana/kmd_lookup.h +++ b/iguana/kmd_lookup.h @@ -203,7 +203,7 @@ FILE *kmd_txidinit(struct iguana_info *coin) { if ( (tx= kmd_transactionalloc(T.txid,T.height,T.timestamp,T.numvouts,T.numvins)) != 0 ) { - printf("INIT %s.[%d] vins.[%d] ht.%d %u\n",bits256_str(str,T.txid),T.numvouts,T.numvins,T.height,T.timestamp); + char str[65]; printf("INIT %s.[%d] vins.[%d] ht.%d %u\n",bits256_str(str,T.txid),T.numvouts,T.numvins,T.height,T.timestamp); if ( (ptr= kmd_transactionadd(coin,tx,T.numvouts,T.numvins)) != 0 ) { if ( ptr != kmd_transaction(coin,tx->txid) ) From 1d94105bbf8e234523a7786bacac4469139c9cf8 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 22:09:39 +0200 Subject: [PATCH 06/11] Test --- iguana/kmd_lookup.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/iguana/kmd_lookup.h b/iguana/kmd_lookup.h index c2d987c80..f3b042dd3 100755 --- a/iguana/kmd_lookup.h +++ b/iguana/kmd_lookup.h @@ -203,7 +203,7 @@ FILE *kmd_txidinit(struct iguana_info *coin) { if ( (tx= kmd_transactionalloc(T.txid,T.height,T.timestamp,T.numvouts,T.numvins)) != 0 ) { - char str[65]; printf("INIT %s.[%d] vins.[%d] ht.%d %u\n",bits256_str(str,T.txid),T.numvouts,T.numvins,T.height,T.timestamp); + //char str[65]; printf("INIT %s.[%d] vins.[%d] ht.%d %u\n",bits256_str(str,T.txid),T.numvouts,T.numvins,T.height,T.timestamp); if ( (ptr= kmd_transactionadd(coin,tx,T.numvouts,T.numvins)) != 0 ) { if ( ptr != kmd_transaction(coin,tx->txid) ) @@ -626,8 +626,8 @@ int32_t _kmd_bitcoinscan(struct iguana_info *coin) while ( loadheight < height-lag ) { flag = 0; - if ( (loadheight % 10000) == 0 ) - printf("loading ht.%d\n",loadheight);//,jprint(kmd_getbalance(coin,"*"),1)); + //if ( (loadheight % 10000) == 0 ) + printf("loading ht.%d vs height.%d - lag.%d kmdheight.%d\n",loadheight,height,lag,coin->kmd_height);//,jprint(kmd_getbalance(coin,"*"),1)); if ( (blockjson= kmd_blockjson(&h,coin->symbol,coin->chain->serverport,coin->chain->userpass,0,loadheight)) != 0 ) { if ( (txids= jarray(&numtxids,blockjson,"tx")) != 0 ) From 09216d299f60fffded5da072b358e4ed4e40fcf2 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 22:47:05 +0200 Subject: [PATCH 07/11] Test --- iguana/kmd_lookup.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/iguana/kmd_lookup.h b/iguana/kmd_lookup.h index f3b042dd3..65f2a9014 100755 --- a/iguana/kmd_lookup.h +++ b/iguana/kmd_lookup.h @@ -395,6 +395,7 @@ cJSON *kmd_listaddress(struct supernet_info *myinfo,struct iguana_info *coin,cha struct kmd_addresshh *addr; struct kmd_transactionhh *ptr=0,*spent,*prev=0; uint8_t type_rmd160[21]; int32_t i; if ( array == 0 ) array = cJSON_CreateArray(); + printf("%s listaddress.(%s)\n",coin->symbol,coinaddr); /*if ( time(NULL) > coin->kmd_lasttime+30 ) { coin->kmd_lasttime = (uint32_t)time(NULL); @@ -627,7 +628,7 @@ int32_t _kmd_bitcoinscan(struct iguana_info *coin) { flag = 0; //if ( (loadheight % 10000) == 0 ) - printf("loading ht.%d vs height.%d - lag.%d kmdheight.%d\n",loadheight,height,lag,coin->kmd_height);//,jprint(kmd_getbalance(coin,"*"),1)); + printf("loading %s ht.%d vs height.%d - lag.%d kmdheight.%d\n",coin->symbol,loadheight,height,lag,coin->kmd_height);//,jprint(kmd_getbalance(coin,"*"),1)); if ( (blockjson= kmd_blockjson(&h,coin->symbol,coin->chain->serverport,coin->chain->userpass,0,loadheight)) != 0 ) { if ( (txids= jarray(&numtxids,blockjson,"tx")) != 0 ) From 17d619343528f5e93fd06192d42d9869b48f91ff Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 22:57:07 +0200 Subject: [PATCH 08/11] Test --- iguana/kmd_lookup.h | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/iguana/kmd_lookup.h b/iguana/kmd_lookup.h index 65f2a9014..c141bf539 100755 --- a/iguana/kmd_lookup.h +++ b/iguana/kmd_lookup.h @@ -392,10 +392,20 @@ cJSON *kmd_gettxin(struct iguana_info *coin,bits256 txid,int32_t vout) cJSON *kmd_listaddress(struct supernet_info *myinfo,struct iguana_info *coin,char *coinaddr,int32_t mode,cJSON *array) { - struct kmd_addresshh *addr; struct kmd_transactionhh *ptr=0,*spent,*prev=0; uint8_t type_rmd160[21]; int32_t i; + struct kmd_addresshh *addr; struct kmd_transactionhh *ptr=0,*spent,*prev=0; uint8_t type_rmd160[21]; int32_t i; char *retstr; cJSON *retjson; if ( array == 0 ) array = cJSON_CreateArray(); printf("%s listaddress.(%s)\n",coin->symbol,coinaddr); + if ( (retstr= bitcoinrpc_validateaddress(myinfo,coin,0,0,coinaddr)) != 0 ) + { + printf("%s\n",retstr); + if ( (retjson= cJSON_Parse(retstr)) != 0 ) + { + free_json(retjson); + } + if ( (0) ) + return(cJSON_Parse("[{\"error\":\"illegal address\"}]")); + } /*if ( time(NULL) > coin->kmd_lasttime+30 ) { coin->kmd_lasttime = (uint32_t)time(NULL); From 2b37522c8cda2f4919ea6430c272a7881914765d Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 23:04:02 +0200 Subject: [PATCH 09/11] Test --- iguana/kmd_lookup.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/iguana/kmd_lookup.h b/iguana/kmd_lookup.h index c141bf539..2feabf1cd 100755 --- a/iguana/kmd_lookup.h +++ b/iguana/kmd_lookup.h @@ -398,13 +398,17 @@ cJSON *kmd_listaddress(struct supernet_info *myinfo,struct iguana_info *coin,cha printf("%s listaddress.(%s)\n",coin->symbol,coinaddr); if ( (retstr= bitcoinrpc_validateaddress(myinfo,coin,0,0,coinaddr)) != 0 ) { - printf("%s\n",retstr); if ( (retjson= cJSON_Parse(retstr)) != 0 ) { + if ( jobj(retjson,"error") != 0 && is_cJSON_False(jobj(retjson,"error")) == 0 ) + { + printf("%s\n",retstr); + free(retstr); + return(retjson); + } free_json(retjson); } - if ( (0) ) - return(cJSON_Parse("[{\"error\":\"illegal address\"}]")); + free(retstr); } /*if ( time(NULL) > coin->kmd_lasttime+30 ) { @@ -759,7 +763,7 @@ void kmd_bitcoinscan() { //if ( strcmp("KMD",coin->symbol) == 0 ) _kmd_bitcoinscan(coin); - usleep(100000); + usleep(250000); } } } From 5f65344dd45e7e366bfb370712939a8cc1b703cb Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 23:08:01 +0200 Subject: [PATCH 10/11] Test --- crypto777/bitcoind_RPC.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crypto777/bitcoind_RPC.c b/crypto777/bitcoind_RPC.c index 66886df69..18ebe16cc 100755 --- a/crypto777/bitcoind_RPC.c +++ b/crypto777/bitcoind_RPC.c @@ -140,7 +140,7 @@ char *bitcoind_RPC(char **retstrp,char *debugstr,char *url,char *userpass,char * else specialcase = 0; if ( url[0] == 0 ) strcpy(url,"http://127.0.0.1:7776"); - //if ( specialcase != 0 && (0) ) + if ( specialcase != 0 && (0) ) printf("<<<<<<<<<<< bitcoind_RPC: debug.(%s) url.(%s) command.(%s) params.(%s)\n",debugstr,url,command,params); try_again: if ( retstrp != 0 ) From 908fef6af48564359f8c7ae377efa76b624ea235 Mon Sep 17 00:00:00 2001 From: jl777 Date: Mon, 27 Feb 2017 23:09:15 +0200 Subject: [PATCH 11/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 5183ea053..d826f6424 100755 --- a/iguana/dpow/dpow_network.c +++ b/iguana/dpow/dpow_network.c @@ -1984,7 +1984,7 @@ int32_t dpow_nanomsg_update(struct supernet_info *myinfo) if ( (flags & 4) == 0 && (size= nn_recv(myinfo->repsock,&dexp,NN_MSG,0)) > 0 ) { num2++; - printf("REP got %d crc.%08x\n",size,calc_crc32(0,(void *)dexp,size)); + //printf("REP got %d crc.%08x\n",size,calc_crc32(0,(void *)dexp,size)); if ( (retstr= dex_response(&broadcastflag,myinfo,dexp)) != 0 ) { signed_nn_send(myinfo,myinfo->ctx,myinfo->persistent_priv,myinfo->repsock,retstr,(int32_t)strlen(retstr)+1);