@ -75,9 +75,9 @@ struct COrphanTx {
@@ -75,9 +75,9 @@ struct COrphanTx {
CTransaction tx ;
NodeId fromPeer ;
} ;
map < uint256 , COrphanTx > mapOrphanTransactions ;
map < uint256 , set < uint256 > > mapOrphanTransactionsByPrev ;
void EraseOrphansFor ( NodeId peer ) ;
map < uint256 , COrphanTx > mapOrphanTransactions GUARDED_BY ( cs_main ) ; ;
map < uint256 , set < uint256 > > mapOrphanTransactionsByPrev GUARDED_BY ( cs_main ) ; ;
void EraseOrphansFor ( NodeId peer ) EXCLUSIVE_LOCKS_REQUIRED ( cs_main ) ;
/**
* Returns true if there are nRequired or more blocks of minVersion or above
@ -527,7 +527,7 @@ CBlockTreeDB *pblocktree = NULL;
@@ -527,7 +527,7 @@ CBlockTreeDB *pblocktree = NULL;
// mapOrphanTransactions
//
bool AddOrphanTx ( const CTransaction & tx , NodeId peer )
bool AddOrphanTx ( const CTransaction & tx , NodeId peer ) EXCLUSIVE_LOCKS_REQUIRED ( cs_main )
{
uint256 hash = tx . GetHash ( ) ;
if ( mapOrphanTransactions . count ( hash ) )
@ -557,7 +557,7 @@ bool AddOrphanTx(const CTransaction& tx, NodeId peer)
@@ -557,7 +557,7 @@ bool AddOrphanTx(const CTransaction& tx, NodeId peer)
return true ;
}
void static EraseOrphanTx ( uint256 hash )
void static EraseOrphanTx ( uint256 hash ) EXCLUSIVE_LOCKS_REQUIRED ( cs_main )
{
map < uint256 , COrphanTx > : : iterator it = mapOrphanTransactions . find ( hash ) ;
if ( it = = mapOrphanTransactions . end ( ) )
@ -591,7 +591,7 @@ void EraseOrphansFor(NodeId peer)
@@ -591,7 +591,7 @@ void EraseOrphansFor(NodeId peer)
}
unsigned int LimitOrphanTxSize ( unsigned int nMaxOrphans )
unsigned int LimitOrphanTxSize ( unsigned int nMaxOrphans ) EXCLUSIVE_LOCKS_REQUIRED ( cs_main )
{
unsigned int nEvicted = 0 ;
while ( mapOrphanTransactions . size ( ) > nMaxOrphans )
@ -3649,7 +3649,7 @@ std::string GetWarnings(const std::string& strFor)
@@ -3649,7 +3649,7 @@ std::string GetWarnings(const std::string& strFor)
//
bool static AlreadyHave ( const CInv & inv )
bool static AlreadyHave ( const CInv & inv ) EXCLUSIVE_LOCKS_REQUIRED ( cs_main )
{
switch ( inv . type )
{