@@ -287,7 +287,8 @@ int32_t NSPV_rwinforesp(int32_t rwflag,uint8_t *serialized,struct NSPV_inforesp
|
||||
len += iguana_rwnum(rwflag,&serialized[len],sizeof(ptr->height),&ptr->height);
|
||||
len += iguana_rwnum(rwflag,&serialized[len],sizeof(ptr->hdrheight),&ptr->hdrheight);
|
||||
len += NSPV_rwequihdr(rwflag,&serialized[len],&ptr->H);
|
||||
//fprintf(stderr,"hdr rwlen.%d\n",len);
|
||||
len += iguana_rwnum(rwflag,&serialized[len],sizeof(ptr->version),&ptr->version);
|
||||
//fprintf(stderr,"getinfo rwlen.%d\n",len);
|
||||
return(len);
|
||||
}
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
#ifndef KOMODO_NSPV_DEFSH
|
||||
#define KOMODO_NSPV_DEFSH
|
||||
|
||||
#define NSPV_PROTOCOL_VERSION 0x00000002
|
||||
#define NSPV_POLLITERS 100
|
||||
#define NSPV_POLLMICROS 30000
|
||||
#define NSPV_MAXVINS 64
|
||||
@@ -125,6 +126,7 @@ struct NSPV_inforesp
|
||||
uint256 blockhash;
|
||||
int32_t height,hdrheight;
|
||||
struct NSPV_equihdr H;
|
||||
uint32_t version;
|
||||
};
|
||||
|
||||
struct NSPV_txproof
|
||||
|
||||
@@ -135,10 +135,11 @@ int32_t NSPV_getinfo(struct NSPV_inforesp *ptr,int32_t reqheight)
|
||||
ptr->notarization = pair.prevntz;
|
||||
if ( (pindex2= komodo_chainactive(ptr->notarization.txidheight)) != 0 )
|
||||
ptr->notarization.timestamp = pindex->nTime;
|
||||
fprintf(stderr, "timestamp.%i\n", ptr->notarization.timestamp );
|
||||
//fprintf(stderr, "timestamp.%i\n", ptr->notarization.timestamp );
|
||||
if ( reqheight == 0 )
|
||||
reqheight = ptr->height;
|
||||
ptr->hdrheight = reqheight;
|
||||
ptr->version = NSPV_PROTOCOL_VERSION;
|
||||
if ( NSPV_setequihdr(&ptr->H,reqheight) < 0 )
|
||||
return(-1);
|
||||
return(sizeof(*ptr));
|
||||
@@ -543,7 +544,7 @@ void komodo_nSPVreq(CNode *pfrom,std::vector<uint8_t> request) // received a req
|
||||
{
|
||||
response.resize(1 + slen);
|
||||
response[0] = NSPV_INFORESP;
|
||||
//fprintf(stderr,"slen.%d\n",slen);
|
||||
//fprintf(stderr,"slen.%d version.%d\n",slen,I.version);
|
||||
if ( NSPV_rwinforesp(1,&response[1],&I) == slen )
|
||||
{
|
||||
//fprintf(stderr,"send info resp to id %d\n",(int32_t)pfrom->id);
|
||||
|
||||
@@ -139,7 +139,7 @@ void komodo_nSPVresp(CNode *pfrom,std::vector<uint8_t> response) // received a r
|
||||
switch ( response[0] )
|
||||
{
|
||||
case NSPV_INFORESP:
|
||||
//fprintf(stderr,"got info response %u size.%d height.%d\n",timestamp,(int32_t)response.size(),NSPV_inforesult.height); // update current height and ntrz status
|
||||
fprintf(stderr,"got version.%d info response %u size.%d height.%d\n",NSPV_inforesult.version,timestamp,(int32_t)response.size(),NSPV_inforesult.height); // update current height and ntrz status
|
||||
I = NSPV_inforesult;
|
||||
NSPV_inforesp_purge(&NSPV_inforesult);
|
||||
NSPV_rwinforesp(0,&response[1],&NSPV_inforesult);
|
||||
@@ -370,6 +370,7 @@ UniValue NSPV_getinfo_json(struct NSPV_inforesp *ptr)
|
||||
result.push_back(Pair("chaintip",ptr->blockhash.GetHex()));
|
||||
result.push_back(Pair("notarization",NSPV_ntz_json(&ptr->notarization)));
|
||||
result.push_back(Pair("header",NSPV_header_json(&ptr->H,ptr->hdrheight)));
|
||||
result.push_back(Pair("protocolversion",(int64_t)ptr->version));
|
||||
result.push_back(Pair("lastpeer",NSPV_lastpeer));
|
||||
return(result);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user