Browse Source

Test

pull/4/head
jl777 6 years ago
parent
commit
8ea4e84f40
  1. 20
      src/cc/dapps/oraclefeed.c

20
src/cc/dapps/oraclefeed.c

@ -595,13 +595,11 @@ void update_gatewayspending(char *acname,char *oraclestxidstr,char *coin)
/// if enough sigs, sendrawtransaction and when it confirms spend marker (txid.2)
/// if not enough sigs, post partially signed to acname with marker2
// monitor marker2, for the partially signed withdraws
cJSON *retjson,*pending,*item; char str[65],*coinstr,*txidaddr,*signeraddr,*srcaddr,*withdrawaddr; int32_t i,n,retval,processed = 0; bits256 txid,withtxid; int64_t satoshis;
cJSON *retjson,*pending,*item; char str[65],*coinstr,*txidaddr,*signeraddr,*withdrawaddr; int32_t i,n,retval,processed = 0; bits256 txid,withtxid; int64_t satoshis;
if ( (retjson= get_gatewayspending(acname,oraclestxidstr,coin)) != 0 )
{
//pending.({"coin":"KMD","pending":[{"txid":"10ec8f4dad6903df6b249b361b879ac77b0617caad7629b97e10f29fa7e99a9b","txidaddr":"RMbite4TGugVmkGmu76ytPHDEQZQGSUjxz","withdrawaddr":"RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc","amount":"1.00000000","depositaddr":"RHV2As4rox97BuE3LK96vMeNY8VsGRTmBj","signeraddr":"RHV2As4rox97BuE3LK96vMeNY8VsGRTmBj"}],"queueflag":1})
if ( jint(retjson,"queueflag") != 0 && (coinstr= jstr(retjson,"coin")) != 0 && strcmp(coinstr,coin) == 0 )
{
printf("check pending\n");
if ( (pending= jarray(&n,retjson,"pending")) != 0 )
{
for (i=0; i<n; i++)
@ -609,18 +607,10 @@ void update_gatewayspending(char *acname,char *oraclestxidstr,char *coin)
if ( processed != 0 ) // avoid out of utxo conditions
break;
item = jitem(pending,i);
/*{
"txid": "10ec8f4dad6903df6b249b361b879ac77b0617caad7629b97e10f29fa7e99a9b",
"txidaddr": "RMbite4TGugVmkGmu76ytPHDEQZQGSUjxz",
"withdrawaddr": "RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc",
"amount": "1.00000000",
"depositaddr": "RHV2As4rox97BuE3LK96vMeNY8VsGRTmBj",
"signeraddr": "RHV2As4rox97BuE3LK96vMeNY8VsGRTmBj"
}*/
printf("process item.%d %s\n",i,jprint(item,0));
if ( (txidaddr= jstr(item,"txidaddr")) != 0 && (withdrawaddr= jstr(item,"")) != 0 && (signeraddr= jstr(item,"signeraddr")) != 0 )
//process item.0 {"txid":"10ec8f4dad6903df6b249b361b879ac77b0617caad7629b97e10f29fa7e99a9b","txidaddr":"RMbite4TGugVmkGmu76ytPHDEQZQGSUjxz","withdrawaddr":"RNJmgYaFF5DbnrNUX6pMYz9rcnDKC2tuAc","amount":"1.00000000","depositaddr":"RHV2As4rox97BuE3LK96vMeNY8VsGRTmBj","signeraddr":"RHV2As4rox97BuE3LK96vMeNY8VsGRTmBj"}
if ( (txidaddr= jstr(item,"txidaddr")) != 0 && (withdrawaddr= jstr(item,"withdrawaddr")) != 0 && (signeraddr= jstr(item,"signeraddr")) != 0 )
{
if ( (retval= coinaddrexists(acname,txidaddr)) == 0 && (srcaddr= jstr(item,"signeraddr")) != 0 && (satoshis= jdouble(item,"amount")*SATOSHIDEN) != 0 )
if ( (retval= coinaddrexists(acname,txidaddr)) == 0 && (satoshis= jdouble(item,"amount")*SATOSHIDEN) != 0 )
{
// this is less errors but more expensive: ./komodo-cli z_sendmany "signeraddr" '[{"address":"<txidaddr>","amount":0.0001},{"address":"<withdrawaddr>","amount":<withamount>}]'
txid = sendtoaddress(acname,txidaddr,10000);
@ -637,7 +627,7 @@ void update_gatewayspending(char *acname,char *oraclestxidstr,char *coin)
{
fprintf(stderr,"ERROR withdraw %s %s %s %.8f processed\n",coin,bits256_str(str,withtxid),withdrawaddr,(double)satoshis/SATOSHIDEN);
}
}
} else fprintf(stderr,"error sending txidaddr.%s -> %s exists.%d\n",txidaddr,bits256_str(str,txid),coinaddrexists(acname,txidaddr));
}
else if ( retval > 0 )
{

Loading…
Cancel
Save