Browse Source

test

etomic
jl777 8 years ago
parent
commit
7c096b1126
  1. 24
      basilisk/basilisk_DEX.c
  2. 3
      basilisk/basilisk_tradebot.c
  3. 1
      iguana/iguana777.h

24
basilisk/basilisk_DEX.c

@ -257,6 +257,7 @@ void basilisk_requests_poll(struct supernet_info *myinfo)
return;
lastpoll = (uint32_t)time(NULL);
memset(&issueR,0,sizeof(issueR));
memset(&myinfo->DEXaccept,0,sizeof(myinfo->DEXaccept));
//printf("Call incoming\n");
if ( (retstr= InstantDEX_incoming(myinfo,0,0,0,0)) != 0 )
{
@ -276,6 +277,10 @@ void basilisk_requests_poll(struct supernet_info *myinfo)
if ( hwm > 0. )
{
printf("hwm %f\n",hwm);
for (i=0; i<sizeof(issueR); i++)
printf("%02x",((uint8_t *)&issueR)[i]);
printf("\n");
myinfo->DEXaccept = issueR;
if ( bits256_cmp(myinfo->myaddr.persistent,issueR.srchash) == 0 ) // my request
{
printf("my req hwm %f\n",hwm);
@ -362,14 +367,19 @@ static int _cmp_requests(const void *a,const void *b)
#undef uint32_b
}
struct basilisk_request *_basilisk_requests_uniq(struct supernet_info *myinfo,int32_t *nump,uint8_t *space,int32_t spacesize)
struct basilisk_request *_basilisk_requests_uniq(struct supernet_info *myinfo,int32_t *nump,uint8_t *space,int32_t spacesize,struct basilisk_request *refrp)
{
int32_t i,j,n,k,m; struct basilisk_relay *relay; struct basilisk_request *requests,*rp;
for (j=m=0; j<myinfo->NOTARY.NUMRELAYS; j++)
m = 0;
if ( refrp != 0 )
m = 1;
for (j=0; j<myinfo->NOTARY.NUMRELAYS; j++)
m += myinfo->NOTARY.RELAYS[j].numrequests;
if ( m*sizeof(*requests) <= spacesize )
requests = (void *)space;
else requests = calloc(m,sizeof(*requests));
if ( refrp != 0 )
requests[0] = *refrp;
for (j=m=0; j<myinfo->NOTARY.NUMRELAYS; j++)
{
relay = &myinfo->NOTARY.RELAYS[j];
@ -403,12 +413,12 @@ struct basilisk_request *_basilisk_requests_uniq(struct supernet_info *myinfo,in
return(jprint(retjson,1));
}*/
char *basilisk_respond_requests(struct supernet_info *myinfo,bits256 hash,uint32_t requestid,uint32_t quoteid)
char *basilisk_respond_requests(struct supernet_info *myinfo,bits256 hash,uint32_t requestid,uint32_t quoteid,struct basilisk_request *refrp)
{
int32_t i,qflag,num=0; cJSON *retjson,*array; struct basilisk_request *requests,*rp; uint8_t space[4096];
array = cJSON_CreateArray();
portable_mutex_lock(&myinfo->DEX_reqmutex);
if ( (requests= _basilisk_requests_uniq(myinfo,&num,space,sizeof(space))) != 0 )
if ( (requests= _basilisk_requests_uniq(myinfo,&num,space,sizeof(space),refrp)) != 0 )
{
//printf("numrequests.%d r.%u q.%u\n",num,requestid,quoteid);
for (i=0; i<num; i++)
@ -429,11 +439,11 @@ char *basilisk_respond_requests(struct supernet_info *myinfo,bits256 hash,uint32
return(jprint(retjson,1));
}
char *basilisk_respond_accept(struct supernet_info *myinfo,uint32_t requestid,uint32_t quoteid)
char *basilisk_respond_accept(struct supernet_info *myinfo,uint32_t requestid,uint32_t quoteid,struct basilisk_request *refrp)
{
int32_t i,num=0; char *retstr=0; struct basilisk_request *requests,*rp; uint8_t space[4096];
portable_mutex_lock(&myinfo->DEX_reqmutex);
if ( (requests= _basilisk_requests_uniq(myinfo,&num,space,sizeof(space))) != 0 )
if ( (requests= _basilisk_requests_uniq(myinfo,&num,space,sizeof(space),refrp)) != 0 )
{
for (i=0; i<num; i++)
{
@ -667,7 +677,7 @@ TWO_INTS(InstantDEX,accept,requestid,quoteid)
cJSON *vals; char *retstr;
myinfo->DEXactive = (uint32_t)time(NULL) + INSTANTDEX_LOCKTIME;
if ( myinfo->IAMLP != 0 || myinfo->dexsock >= 0 || myinfo->subsock >= 0 )
return(basilisk_respond_accept(myinfo,requestid,quoteid));
return(basilisk_respond_accept(myinfo,requestid,quoteid,&myinfo->DEXaccept));
else
{
vals = cJSON_CreateObject();

3
basilisk/basilisk_tradebot.c

@ -510,6 +510,9 @@ double basilisk_process_results(struct supernet_info *myinfo,struct basilisk_req
{
*issueR = tmpR, hwm = metric;
printf("set hwm\n");
for (i=0; i<sizeof(*issueR); i++)
printf("%02x",((uint8_t *)issueR)[i]);
printf("\n");
}
}
return(hwm);

1
iguana/iguana777.h

@ -107,6 +107,7 @@ struct supernet_info
struct basilisk_message *messagetable; portable_mutex_t messagemutex; queue_t msgQ,p2pQ;
void *ctx;
uint8_t *pingbuf;
struct basilisk_request DEXaccept;
FILE *dexfp;
struct dpow_info DPOWS[64]; int32_t numdpows,dpowsock,dexsock,pubsock,repsock,subsock,reqsock;
struct delayedPoW_info dPoW;

Loading…
Cancel
Save