Browse Source

test

release/v0.1
jl777 9 years ago
parent
commit
b409120689
  1. 4
      basilisk/basilisk.c
  2. 2
      basilisk/basilisk_MSG.c
  3. 24
      basilisk/basilisk_swap.c

4
basilisk/basilisk.c

@ -254,7 +254,7 @@ int32_t basilisk_sendcmd(struct supernet_info *myinfo,char *destipaddr,char *typ
void basilisk_sendback(struct supernet_info *myinfo,char *origCMD,char *symbol,char *remoteaddr,uint32_t basilisktag,char *retstr) void basilisk_sendback(struct supernet_info *myinfo,char *origCMD,char *symbol,char *remoteaddr,uint32_t basilisktag,char *retstr)
{ {
uint8_t *data,space[4096],*allocptr; struct iguana_info *virt; cJSON *valsobj; int32_t datalen,encryptflag=0,delaymillis=0; uint8_t *data,space[4096],*allocptr; struct iguana_info *virt; cJSON *valsobj; int32_t datalen,encryptflag=0,delaymillis=0;
printf("%s retstr.(%s) -> remote.(%s) basilisktag.%u\n",origCMD,retstr,remoteaddr,basilisktag); //printf("%s retstr.(%s) -> remote.(%s) basilisktag.%u\n",origCMD,retstr,remoteaddr,basilisktag);
if ( retstr != 0 && remoteaddr != 0 && remoteaddr[0] != 0 && strcmp(remoteaddr,"127.0.0.1") != 0 ) if ( retstr != 0 && remoteaddr != 0 && remoteaddr[0] != 0 && strcmp(remoteaddr,"127.0.0.1") != 0 )
{ {
if ( (valsobj= cJSON_Parse(retstr)) != 0 ) if ( (valsobj= cJSON_Parse(retstr)) != 0 )
@ -269,7 +269,7 @@ void basilisk_sendback(struct supernet_info *myinfo,char *origCMD,char *symbol,c
jaddbits256(valsobj,"chaintip",virt->blocks.hwmchain.RO.hash2); jaddbits256(valsobj,"chaintip",virt->blocks.hwmchain.RO.hash2);
} }
data = basilisk_jsondata(sizeof(struct iguana_msghdr),&allocptr,space,sizeof(space),&datalen,symbol,valsobj,basilisktag); data = basilisk_jsondata(sizeof(struct iguana_msghdr),&allocptr,space,sizeof(space),&datalen,symbol,valsobj,basilisktag);
printf("sendback.%d -> %s\n",datalen,remoteaddr); //printf("sendback.%d -> %s\n",datalen,remoteaddr);
basilisk_sendcmd(myinfo,remoteaddr,"RET",&basilisktag,encryptflag,delaymillis,data,datalen,0,0); basilisk_sendcmd(myinfo,remoteaddr,"RET",&basilisktag,encryptflag,delaymillis,data,datalen,0,0);
if ( allocptr != 0 ) if ( allocptr != 0 )
free(allocptr); free(allocptr);

2
basilisk/basilisk_MSG.c

@ -112,7 +112,7 @@ char *basilisk_respond_getmessage(struct supernet_info *myinfo,uint8_t *key,int3
{ {
jadd(retjson,"message",msgjson); jadd(retjson,"message",msgjson);
jaddstr(retjson,"result","success"); jaddstr(retjson,"result","success");
printf("havemessage len.%d\n",msg->datalen); //printf("havemessage len.%d\n",msg->datalen);
} else jaddstr(retjson,"error","couldnt add message"); } else jaddstr(retjson,"error","couldnt add message");
} else jaddstr(retjson,"error","no message"); } else jaddstr(retjson,"error","no message");
portable_mutex_unlock(&myinfo->messagemutex); portable_mutex_unlock(&myinfo->messagemutex);

24
basilisk/basilisk_swap.c

@ -116,9 +116,19 @@ int32_t basilisk_alicescript(uint8_t *script,int32_t n,char *msigaddr,uint8_t al
return(n); return(n);
} }
int32_t basilisk_confirmsobj(cJSON *item)
{
int32_t height,numconfirms;
height = jint(item,"height");
numconfirms = jint(item,"numconfirms");
if ( height > 0 && numconfirms >= 0 )
return(numconfirms);
return(-1);
}
int32_t basilisk_numconfirms(struct supernet_info *myinfo,struct basilisk_rawtx *rawtx) int32_t basilisk_numconfirms(struct supernet_info *myinfo,struct basilisk_rawtx *rawtx)
{ {
cJSON *argjson,*valuearray=0,*item; char *valstr; int32_t numconfirms,height,i,n,retval = -1; cJSON *argjson,*valuearray=0; char *valstr; int32_t i,n,retval = -1;
#ifdef BASILISK_DISABLETX #ifdef BASILISK_DISABLETX
return(10); return(10);
#endif #endif
@ -136,17 +146,10 @@ int32_t basilisk_numconfirms(struct supernet_info *myinfo,struct basilisk_rawtx
n = cJSON_GetArraySize(valuearray); n = cJSON_GetArraySize(valuearray);
for (i=0; i<n; i++) for (i=0; i<n; i++)
{ {
item = jitem(valuearray,i); if ( (retval= basilisk_confirmsobj(jitem(valuearray,i))) >= 0 )
height = jint(item,"height");
numconfirms = jint(item,"numconfirms");
char str[65]; printf("i.%d of %d: %s height.%d -> numconfirms.%d\n",i,n,bits256_str(str,rawtx->actualtxid),height,numconfirms);
if ( height > 0 && numconfirms >= 0 )
{
retval = numconfirms;
break; break;
} }
} } else retval = basilisk_confirmsobj(valuearray);
} else printf("valstr not array\n");
free_json(valuearray); free_json(valuearray);
} else printf("parse error\n"); } else printf("parse error\n");
free(valstr); free(valstr);
@ -1134,6 +1137,7 @@ void basilisk_swaploop(void *_swap)
} }
while ( retval == 0 && time(NULL) < swap->expiration ) // both sides have setup required data and paid txfee while ( retval == 0 && time(NULL) < swap->expiration ) // both sides have setup required data and paid txfee
{ {
printf("E r%u/q%u swapstate.%x otherstate.%x\n",swap->req.requestid,swap->req.quoteid,swap->statebits,swap->otherstatebits);
if ( swap->iambob != 0 ) if ( swap->iambob != 0 )
{ {
if ( (swap->statebits & 0x100) == 0 ) if ( (swap->statebits & 0x100) == 0 )

Loading…
Cancel
Save