From e2fe372b4daf621bd51e5484d8cfac031ba5b2d8 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sat, 21 Jan 2017 12:34:35 +0200 Subject: [PATCH] test --- iguana/dpow/dpow_network.c | 25 +++++++++++++------------ iguana/iguana_notary.c | 3 +++ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/iguana/dpow/dpow_network.c b/iguana/dpow/dpow_network.c index 58249fee5..b102cf6f7 100755 --- a/iguana/dpow/dpow_network.c +++ b/iguana/dpow/dpow_network.c @@ -723,15 +723,16 @@ char *_dex_sendrequest(struct supernet_info *myinfo,struct dex_request *dexreq,i } else return(clonestr("{\"error\":\"not notarychain\"}")); } -char *_dex_sendrequeststr(struct supernet_info *myinfo,struct dex_request *dexreq,char *str,int32_t M,char *field) +char *_dex_sendrequeststr(struct supernet_info *myinfo,struct dex_request *dexreq,char *str,int32_t slen,int32_t M,char *field) { - uint8_t *packet; int32_t datalen,slen; char *retstr; + uint8_t *packet; int32_t datalen; char *retstr; if ( iguana_isnotarychain(dexreq->name) >= 0 ) { - slen = (int32_t)strlen(str)+1; + if ( slen == 0 ) + slen = (int32_t)strlen(str)+1; packet = calloc(1,sizeof(*dexreq)+slen); datalen = dex_rwrequest(1,packet,dexreq); - strcpy((char *)&packet[datalen],str); + memcpy((char *)&packet[datalen],str,slen); datalen += slen; retstr = dex_reqsend(myinfo,"request",packet,datalen,M,field); free(packet); @@ -774,7 +775,7 @@ char *_dex_kvupdate(struct supernet_info *myinfo,char *symbol,char *key,char *va dexreq.shortarg = keylen+1; memcpy(&keyvalue[dexreq.shortarg],value,valuesize+1); printf("_DEX.(%s) -> (%s) flags.%d\n",key,value,flags); - return(_dex_sendrequeststr(myinfo,&dexreq,keyvalue,1,"")); + return(_dex_sendrequeststr(myinfo,&dexreq,keyvalue,keylen+valuesize+2,1,"")); } char *_dex_kvsearch(struct supernet_info *myinfo,char *symbol,char *key) @@ -783,7 +784,7 @@ char *_dex_kvsearch(struct supernet_info *myinfo,char *symbol,char *key) memset(&dexreq,0,sizeof(dexreq)); safecopy(dexreq.name,symbol,sizeof(dexreq.name)); dexreq.func = 'k'; - return(_dex_sendrequeststr(myinfo,&dexreq,key,1,"")); + return(_dex_sendrequeststr(myinfo,&dexreq,key,0,1,"")); } char *_dex_getinfo(struct supernet_info *myinfo,char *symbol) @@ -880,7 +881,7 @@ char *_dex_sendrawtransaction(struct supernet_info *myinfo,char *symbol,char *si memset(&dexreq,0,sizeof(dexreq)); safecopy(dexreq.name,symbol,sizeof(dexreq.name)); dexreq.func = 'S'; - return(_dex_sendrequeststr(myinfo,&dexreq,signedtx,3,"*")); + return(_dex_sendrequeststr(myinfo,&dexreq,signedtx,0,3,"*")); } char *_dex_importaddress(struct supernet_info *myinfo,char *symbol,char *address) @@ -889,7 +890,7 @@ char *_dex_importaddress(struct supernet_info *myinfo,char *symbol,char *address memset(&dexreq,0,sizeof(dexreq)); safecopy(dexreq.name,symbol,sizeof(dexreq.name)); dexreq.func = 'A'; - return(_dex_sendrequeststr(myinfo,&dexreq,address,1,"")); + return(_dex_sendrequeststr(myinfo,&dexreq,address,0,1,"")); } char *_dex_checkaddress(struct supernet_info *myinfo,char *symbol,char *address) @@ -898,7 +899,7 @@ char *_dex_checkaddress(struct supernet_info *myinfo,char *symbol,char *address) memset(&dexreq,0,sizeof(dexreq)); safecopy(dexreq.name,symbol,sizeof(dexreq.name)); dexreq.func = 'C'; - return(_dex_sendrequeststr(myinfo,&dexreq,address,3,"address")); + return(_dex_sendrequeststr(myinfo,&dexreq,address,0,3,"address")); } char *_dex_validateaddress(struct supernet_info *myinfo,char *symbol,char *address) @@ -907,7 +908,7 @@ char *_dex_validateaddress(struct supernet_info *myinfo,char *symbol,char *addre memset(&dexreq,0,sizeof(dexreq)); safecopy(dexreq.name,symbol,sizeof(dexreq.name)); dexreq.func = 'V'; - return(_dex_sendrequeststr(myinfo,&dexreq,address,1,"")); + return(_dex_sendrequeststr(myinfo,&dexreq,address,0,1,"")); } char *_dex_listunspent(struct supernet_info *myinfo,char *symbol,char *address) @@ -916,7 +917,7 @@ char *_dex_listunspent(struct supernet_info *myinfo,char *symbol,char *address) memset(&dexreq,0,sizeof(dexreq)); safecopy(dexreq.name,symbol,sizeof(dexreq.name)); dexreq.func = 'U'; - if ( (retstr= _dex_sendrequeststr(myinfo,&dexreq,address,1,"")) != 0 ) + if ( (retstr= _dex_sendrequeststr(myinfo,&dexreq,address,0,1,"")) != 0 ) { //printf("UNSPENTS.(%s)\n",retstr); } @@ -931,7 +932,7 @@ char *_dex_listtransactions(struct supernet_info *myinfo,char *symbol,char *addr dexreq.intarg = skip; dexreq.shortarg = count; dexreq.func = 'L'; - return(_dex_arrayreturn(_dex_sendrequeststr(myinfo,&dexreq,address,1,""))); + return(_dex_arrayreturn(_dex_sendrequeststr(myinfo,&dexreq,address,0,1,""))); } int32_t dex_crc32find(struct supernet_info *myinfo,uint32_t crc32) diff --git a/iguana/iguana_notary.c b/iguana/iguana_notary.c index 39e592f2b..da09f9d33 100755 --- a/iguana/iguana_notary.c +++ b/iguana/iguana_notary.c @@ -509,6 +509,8 @@ STRING_AND_INT(dpow,fundnotaries,symbol,numblocks) { if ( symbol == 0 || symbol[0] == 0 || strcmp(symbol,NOTARY_CURRENCIES[i]) == 0 ) { + if ( symbol != 0 && strcmp(symbol,"KV") == 0 ) + val = 100; for (j=0; j