Skip to content

Commit

Permalink
Revert BRPeerManagerIsConnected()
Browse files Browse the repository at this point in the history
edgarnet committed Mar 29, 2018

Verified

This commit was signed with the committer’s verified signature.
nicosomb Nicolas Lœuillet
1 parent 5650676 commit 9171657
Showing 2 changed files with 24 additions and 5 deletions.
24 changes: 20 additions & 4 deletions BRPeerManager.c
Original file line number Diff line number Diff line change
@@ -1452,19 +1452,23 @@ static void _dummyThreadCleanup(void *info)
}

// returns a newly allocated BRPeerManager struct that must be freed by calling BRPeerManagerFree()
BRPeerManager *BRPeerManagerNew(const BRChainParams *params, BRWallet *wallet, uint32_t earliestKeyTime,
BRPeerManager *BRPeerManagerNew(/*const BRChainParams *params, */BRWallet *wallet, uint32_t earliestKeyTime,
BRMerkleBlock *blocks[], size_t blocksCount, const BRPeer peers[], size_t peersCount)
{
BRPeerManager *manager = calloc(1, sizeof(*manager));
BRMerkleBlock orphan, *block = NULL;

assert(manager != NULL);
assert(params != NULL);
assert(params->standardPort != 0);
// assert(params != NULL);
// assert(params->standardPort != 0);
assert(wallet != NULL);
assert(blocks != NULL || blocksCount == 0);
assert(peers != NULL || peersCount == 0);
manager->params = params;
#if BITCOIN_TESTNET
manager->params = &BRTestNetParams;
#else
manager->params = &BRMainNetParams;
#endif
manager->wallet = wallet;
manager->earliestKeyTime = earliestKeyTime;
manager->averageTxPerBlock = 1400;
@@ -1560,6 +1564,18 @@ void BRPeerManagerSetFixedPeer(BRPeerManager *manager, UInt128 address, uint16_t
pthread_mutex_unlock(&manager->lock);
}

// true if currently connected to at least one peer
int BRPeerManagerIsConnected(BRPeerManager *manager)
{
int isConnected;

assert(manager != NULL);
pthread_mutex_lock(&manager->lock);
isConnected = manager->isConnected;
pthread_mutex_unlock(&manager->lock);
return isConnected;
}

// current connect status
BRPeerStatus BRPeerManagerConnectStatus(BRPeerManager *manager)
{
5 changes: 4 additions & 1 deletion BRPeerManager.h
Original file line number Diff line number Diff line change
@@ -42,7 +42,7 @@ extern "C" {
typedef struct BRPeerManagerStruct BRPeerManager;

// returns a newly allocated BRPeerManager struct that must be freed by calling BRPeerManagerFree()
BRPeerManager *BRPeerManagerNew(const BRChainParams *params, BRWallet *wallet, uint32_t earliestKeyTime,
BRPeerManager *BRPeerManagerNew(/*const BRChainParams *params, */BRWallet *wallet, uint32_t earliestKeyTime,
BRMerkleBlock *blocks[], size_t blocksCount, const BRPeer peers[], size_t peersCount);

// not thread-safe, set callbacks once before calling BRPeerManagerConnect()
@@ -69,6 +69,9 @@ void BRPeerManagerSetCallbacks(BRPeerManager *manager, void *info,
// set address to UINT128_ZERO to revert to default behavior
void BRPeerManagerSetFixedPeer(BRPeerManager *manager, UInt128 address, uint16_t port);

// true if currently connected to at least one peer
int BRPeerManagerIsConnected(BRPeerManager *manager);

// current connect status
BRPeerStatus BRPeerManagerConnectStatus(BRPeerManager *manager);

0 comments on commit 9171657

Please sign in to comment.