Stub messages
This commit is contained in:
@@ -21,37 +21,68 @@
|
||||
#ifndef KOMODO_NSPV_H
|
||||
#define KOMODO_NSPV_H
|
||||
|
||||
void komodo_nSPVreq(CNode *pfrom,std::vector<uint8_t> payload) // received a request
|
||||
{
|
||||
|
||||
}
|
||||
#define NSPV_INFO 0x00
|
||||
#define NSPV_INFORESP 0x01
|
||||
#define NSPV_UTXOS 0x02
|
||||
#define NSPV_UTXOSRESP 0x03
|
||||
|
||||
void komodo_nSPVresp(CNode *pfrom,std::vector<uint8_t> payload) // received a response
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/*void komodo_sendnSPV(int32_t minpeers,int32_t maxpeers,const char *message,std::vector<uint8_t> payload)
|
||||
void komodo_nSPVreq(CNode *pfrom,std::vector<uint8_t> request) // received a request
|
||||
{
|
||||
int32_t numsent = 0;
|
||||
LOCK(cs_vNodes);
|
||||
BOOST_FOREACH(CNode* pnode, vNodes)
|
||||
int32_t len; std::vector<uint8_t> response;
|
||||
if ( (len= request.size()) > 0 )
|
||||
{
|
||||
if ( pnode->hSocket == INVALID_SOCKET )
|
||||
continue;
|
||||
if ( numsent < minpeers || (rand() % 10) == 0 )
|
||||
response.resize(1);
|
||||
if ( len == 1 && request[0] == NSPV_INFO ) // info
|
||||
{
|
||||
//fprintf(stderr,"pushmessage\n");
|
||||
pnode->PushMessage(message,payload);
|
||||
if ( numsent++ > maxpeers )
|
||||
response[0] = NSPV_INFORESP;
|
||||
pnode->PushMessage("nSPV",response);
|
||||
}
|
||||
else if ( request[0] == NSPV_UTXOS )
|
||||
{
|
||||
response[0] = NSPV_UTXOSRESP;
|
||||
pnode->PushMessage("nSPV",response);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void komodo_nSPVresp(CNode *pfrom,std::vector<uint8_t> response) // received a response
|
||||
{
|
||||
int32_t len;
|
||||
if ( (len= response.size()) > 0 )
|
||||
{
|
||||
switch ( response[0] )
|
||||
{
|
||||
case NSPV_INFORESP:
|
||||
fprintf(stderr,"got info response\n");
|
||||
break;
|
||||
case NSPV_UTXOSRESP:
|
||||
fprintf(stderr,"got utxos response\n");
|
||||
break;
|
||||
default: fprintf(stderr,"unexpected response %02x size.%d\n",response[0],(int32_t)response.size());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
void komodo_nSPV(CNode *pto) // issue nSPV requests if has nServices
|
||||
void komodo_nSPV(CNode *pto)
|
||||
{
|
||||
|
||||
std::vector<uint8_t> request;
|
||||
// limit frequency!
|
||||
if ( (pto->nServices & NODE_ADDRINDEX) != 0 )
|
||||
{
|
||||
// get utxo since lastheight
|
||||
payload.resize(1);
|
||||
payload[0] = NSPV_UTXOS;
|
||||
pnode->PushMessage("getnSPV",request);
|
||||
}
|
||||
else
|
||||
{
|
||||
// query current height, blockhash, notarization info
|
||||
payload.resize(1);
|
||||
payload[0] = NSPV_INFO;
|
||||
pnode->PushMessage("getnSPV",request);
|
||||
}
|
||||
}
|
||||
|
||||
#endif // KOMODO_NSPV_H
|
||||
|
||||
Reference in New Issue
Block a user