Esempio n. 1
0
void CBInitInventory(CBInventory * self) {
	
	self->itemNum = 0;
	self->itemFront = NULL;
	CBInitMessageByObject(CBGetMessage(self));
	
}
Esempio n. 2
0
bool CBInitBlockHeaders(CBBlockHeaders * self) {
    self->headerNum = 0;
    self->blockHeaders = NULL;
    if (NOT CBInitMessageByObject(CBGetMessage(self)))
        return false;
    return true;
}
Esempio n. 3
0
void CBInitAlert(CBAlert * self, int32_t version, int64_t relayUntil, int64_t expiration, int32_t ID, int32_t cancel, int32_t minVer, int32_t maxVer, int32_t priority, CBByteArray * hiddenComment, CBByteArray * displayedComment, CBByteArray * reserved) {
	
	self->version = version;
	self->relayUntil = relayUntil;
	self->expiration = expiration;
	self->ID = ID;
	self->cancel = cancel;
	self->minVer = minVer;
	self->maxVer = maxVer;
	self->priority = priority;
	
	self->hiddenComment = hiddenComment;
	if (hiddenComment) CBRetainObject(hiddenComment);
	
	self->displayedComment = displayedComment;
	if (displayedComment) CBRetainObject(displayedComment);
	
	self->reserved = reserved;
	if (reserved) CBRetainObject(reserved);
	
	self->signature = NULL;
	self->payload = NULL;
	
	CBInitMessageByObject(CBGetMessage(self));
	
}
Esempio n. 4
0
void CBInitTransactionInputTakeScriptAndHash(CBTransactionInput * self, CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex){
	self->scriptObject = script;
	self->prevOut.hash = prevOutHash;
	self->prevOut.index = prevOutIndex;
	self->sequence = sequence;
	CBInitMessageByObject(CBGetMessage(self));
}
Esempio n. 5
0
bool CBInitInventoryBroadcast(CBInventoryBroadcast * self,CBEvents * events){
	self->itemNum = 0;
	self->items = NULL;
	if (NOT CBInitMessageByObject(CBGetMessage(self), events))
		return false;
	return true;
}
Esempio n. 6
0
bool CBInitChainDescriptor(CBChainDescriptor * self,void (*logError)(char *,...)){
	self->hashNum = 0;
	self->hashes = NULL;
	if (NOT CBInitMessageByObject(CBGetMessage(self), logError))
		return false;
	return true;
}
Esempio n. 7
0
bool CBInitBlockHeaders(CBBlockHeaders * self,void (*logError)(char *,...)) {
    self->headerNum = 0;
    self->blockHeaders = NULL;
    if (NOT CBInitMessageByObject(CBGetMessage(self), logError))
        return false;
    return true;
}
Esempio n. 8
0
bool CBInitInventoryBroadcast(CBInventoryBroadcast * self,void (*onErrorReceived)(CBError error,char *,...)){
	self->itemNum = 0;
	self->items = NULL;
	if (NOT CBInitMessageByObject(CBGetMessage(self), onErrorReceived))
		return false;
	return true;
}
Esempio n. 9
0
bool CBInitNetworkAddress(CBNetworkAddress * self, uint64_t lastSeen, CBByteArray * ip, uint16_t port, CBVersionServices services, bool isPublic){
	self->lastSeen = lastSeen;
	self->penalty = 0;
	self->ip = ip;
	self->isPublic = isPublic;
	if (NOT ip) {
		ip = CBNewByteArrayOfSize(16);
		if (NOT ip)
			return false;
		memset(CBByteArrayGetData(ip), 0, 16);
		self->type = CB_IP_INVALID;
	}else{
		// Determine IP type
		self->type = CBGetIPType(CBByteArrayGetData(ip));
		CBRetainObject(ip);
	}
	self->port = port;
	self->services = services;
	self->bucketSet = false;
	if (NOT CBInitMessageByObject(CBGetMessage(self))){
		CBReleaseObject(ip);
		return false;
	}
	return true;
}
Esempio n. 10
0
bool CBInitInventoryItem(CBInventoryItem * self,CBInventoryItemType type,CBByteArray * hash,void (*logError)(char *,...)){
	self->type = type;
	self->hash = hash;
	CBRetainObject(hash);
	if (NOT CBInitMessageByObject(CBGetMessage(self), logError))
		return false;
	return true;
}
Esempio n. 11
0
bool CBInitAddressBroadcast(CBAddressBroadcast * self, bool timeStamps){
	self->timeStamps = timeStamps;
	self->addrNum = 0;
	self->addresses = NULL;
	if (NOT CBInitMessageByObject(CBGetMessage(self)))
		return false;
	return true;
}
Esempio n. 12
0
bool CBInitAddressBroadcast(CBAddressBroadcast * self,bool timeStamps,void (*onErrorReceived)(CBError error,char *,...)){
	self->timeStamps = timeStamps;
	self->addrNum = 0;
	self->addresses = NULL;
	if (NOT CBInitMessageByObject(CBGetMessage(self), onErrorReceived))
		return false;
	return true;
}
Esempio n. 13
0
bool CBInitInventoryItem(CBInventoryItem * self, CBInventoryItemType type, CBByteArray * hash){
	self->type = type;
	self->hash = hash;
	CBRetainObject(hash);
	if (NOT CBInitMessageByObject(CBGetMessage(self)))
		return false;
	return true;
}
Esempio n. 14
0
bool CBInitUnsignedTransactionInput(CBTransactionInput * self,uint32_t sequence,CBByteArray * prevOutHash,uint32_t prevOutIndex,void (*onErrorReceived)(CBError error,char *,...)){
	self->scriptObject = NULL;
	self->prevOut.hash = prevOutHash;
	CBRetainObject(prevOutHash);
	self->prevOut.index = prevOutIndex;
	self->sequence = sequence;
	if (NOT CBInitMessageByObject(CBGetMessage(self), onErrorReceived))
		return false;
	return true;
}
Esempio n. 15
0
bool CBInitBlock(CBBlock * self){
	self->prevBlockHash = NULL;
	self->merkleRoot = NULL;
	self->transactions = NULL;
	self->transactionNum = 0;
	self->hashSet = false;
	memset(self->hash, 0, 32);
	if (NOT CBInitMessageByObject(CBGetMessage(self)))
		return false;
	return true;
}
Esempio n. 16
0
bool CBInitTransactionOutput(CBTransactionOutput * self, uint64_t value, CBScript * script){
	if (script){
		self->scriptObject = script;
		CBRetainObject(script);
	}else
		self->scriptObject = NULL;
	self->value = value;
	if (NOT CBInitMessageByObject(CBGetMessage(self)))
		return false;
	return true;
}
Esempio n. 17
0
CBMessage * CBNewMessageByObject(void (*onErrorReceived)(CBError error,char *,...)){
	CBMessage * self = malloc(sizeof(*self));
	if (NOT self) {
		onErrorReceived(CB_ERROR_OUT_OF_MEMORY,"Cannot allocate %i bytes of memory in CBNewMessageByObject\n",sizeof(*self));
		return NULL;
	}
	CBGetObject(self)->free = CBFreeMessage;
	if (CBInitMessageByObject(self,onErrorReceived))
		return self;
	free(self);
	return NULL;
}
Esempio n. 18
0
bool CBInitTransaction(CBTransaction * self, uint32_t lockTime, uint32_t version){
	self->lockTime = lockTime;
	self->inputNum = 0;
	self->outputNum = 0;
	self->inputs = NULL;
	self->outputs = NULL;
	self->version = version;
	self->hashSet = false;
	if (NOT CBInitMessageByObject(CBGetMessage(self)))
		return false;
	return true;
}
Esempio n. 19
0
bool CBInitVersion(CBVersion * self,int32_t version,CBVersionServices services,int64_t time,CBNetworkAddress * addRecv,CBNetworkAddress * addSource,uint64_t nonce,CBByteArray * userAgent,int32_t blockHeight,void (*logError)(char *,...)){
	self->version = version;
	self->services = services;
	self->time = time;
	self->addRecv = addRecv;
	CBRetainObject(addRecv);
	self->addSource = addSource;
	CBRetainObject(addSource);
	self->nonce = nonce;
	self->userAgent = userAgent;
	CBRetainObject(userAgent);
	self->blockHeight = blockHeight;
	if (NOT CBInitMessageByObject(CBGetMessage(self), logError))
		return false;
	return true;
}
Esempio n. 20
0
void CBInitPingPong(CBPingPong * self, long long int ID) {
	
	self->ID = ID;
	CBInitMessageByObject(CBGetMessage(self));
	
}
Esempio n. 21
0
void CBInitChainDescriptor(CBChainDescriptor * self){
	self->hashNum = 0;
	self->hashes = NULL;
	CBInitMessageByObject(CBGetMessage(self));
}
Esempio n. 22
0
void CBInitNetworkAddressList(CBNetworkAddressList * self, bool timeStamps){
	self->timeStamps = timeStamps;
	self->addrNum = 0;
	self->addresses = NULL;
	CBInitMessageByObject(CBGetMessage(self));
}
Esempio n. 23
0
void CBInitBlockHeaders(CBBlockHeaders * self){
	self->headerNum = 0;
	CBInitMessageByObject(CBGetMessage(self));
}