|
|
@ -589,8 +589,8 @@ void instantdex_swapbits256update(bits256 *txidp,cJSON *argjson,char *fieldname) |
|
|
|
|
|
|
|
void instantdex_newjson(struct supernet_info *myinfo,struct bitcoin_swapinfo *swap,cJSON *newjson) |
|
|
|
{ |
|
|
|
uint8_t pubkey[33]; int32_t deckflag; |
|
|
|
deckflag = (newjson != 0 && swap->otherchoosei < 0) ? 1 : 0; |
|
|
|
uint8_t pubkey[33]; int32_t deckflag = 1; |
|
|
|
//deckflag = (newjson != 0 && swap->otherchoosei < 0) ? 1 : 0;
|
|
|
|
if ( instantdex_pubkeyargs(myinfo,swap,2 + deckflag*INSTANTDEX_DECKSIZE,myinfo->persistent_priv,swap->myorderhash,0x02+instantdex_isbob(swap)) != 2 + deckflag*INSTANTDEX_DECKSIZE ) |
|
|
|
printf("ERROR: couldnt generate pubkeys deckflag.%d\n",deckflag); |
|
|
|
jaddnum(newjson,"have",swap->havestate); |
|
|
@ -1262,6 +1262,11 @@ char *instantdex_statemachine(struct instantdex_stateinfo *states,int32_t numsta |
|
|
|
instantdex_newjson(myinfo,swap,newjson); |
|
|
|
printf("i.%d (%s) %s %s.%d -> %s.%d send.(%s) %p\n",i,jprint(newjson,0),cmdstr,swap->state->name,state->ind,states[state->events[i].nextstateind].name,state->events[i].nextstateind,state->events[i].sendcmd,&states[state->events[i].nextstateind]); |
|
|
|
swap->state = &states[state->events[i].nextstateind]; |
|
|
|
if ( swap->otherchoosei < 0 ) |
|
|
|
{ |
|
|
|
serdata = (void *)swap->deck; |
|
|
|
serdatalen = (int32_t)sizeof(swap->deck); |
|
|
|
} |
|
|
|
return(instantdex_sendcmd(myinfo,&swap->mine.offer,newjson,state->events[i].sendcmd,swap->othertrader,INSTANTDEX_HOPS,serdata,serdatalen,0)); |
|
|
|
} else return(clonestr("{\"error\":\"instantdex_statemachine: illegal state\"}")); |
|
|
|
} else return(clonestr("{\"result\":\"instantdex_statemachine: processed\"}")); |
|
|
|