@ -8,8 +8,6 @@
# include "serialize.h"
# include "serialize.h"
# include "streams.h"
# include "streams.h"
using namespace std ;
int CAddrInfo : : GetTriedBucket ( const uint256 & nKey ) const
int CAddrInfo : : GetTriedBucket ( const uint256 & nKey ) const
{
{
uint64_t hash1 = ( CHashWriter ( SER_GETHASH , 0 ) < < nKey < < GetKey ( ) ) . GetHash ( ) . GetCheapHash ( ) ;
uint64_t hash1 = ( CHashWriter ( SER_GETHASH , 0 ) < < nKey < < GetKey ( ) ) . GetHash ( ) . GetCheapHash ( ) ;
@ -68,7 +66,7 @@ double CAddrInfo::GetChance(int64_t nNow) const
fChance * = 0.01 ;
fChance * = 0.01 ;
// deprioritize 66% after each failed attempt, but at most 1/28th to avoid the search taking forever or overly penalizing outages.
// deprioritize 66% after each failed attempt, but at most 1/28th to avoid the search taking forever or overly penalizing outages.
fChance * = pow ( 0.66 , min ( nAttempts , 8 ) ) ;
fChance * = pow ( 0.66 , std : : min ( nAttempts , 8 ) ) ;
return fChance ;
return fChance ;
}
}
@ -258,7 +256,7 @@ bool CAddrMan::Add_(const CAddress& addr, const CNetAddr& source, int64_t nTimeP
bool fCurrentlyOnline = ( GetAdjustedTime ( ) - addr . nTime < 24 * 60 * 60 ) ;
bool fCurrentlyOnline = ( GetAdjustedTime ( ) - addr . nTime < 24 * 60 * 60 ) ;
int64_t nUpdateInterval = ( fCurrentlyOnline ? 60 * 60 : 24 * 60 * 60 ) ;
int64_t nUpdateInterval = ( fCurrentlyOnline ? 60 * 60 : 24 * 60 * 60 ) ;
if ( addr . nTime & & ( ! pinfo - > nTime | | pinfo - > nTime < addr . nTime - nUpdateInterval - nTimePenalty ) )
if ( addr . nTime & & ( ! pinfo - > nTime | | pinfo - > nTime < addr . nTime - nUpdateInterval - nTimePenalty ) )
pinfo - > nTime = max ( ( int64_t ) 0 , addr . nTime - nTimePenalty ) ;
pinfo - > nTime = std : : max ( ( int64_t ) 0 , addr . nTime - nTimePenalty ) ;
// add services
// add services
pinfo - > nServices | = addr . nServices ;
pinfo - > nServices | = addr . nServices ;
@ -283,7 +281,7 @@ bool CAddrMan::Add_(const CAddress& addr, const CNetAddr& source, int64_t nTimeP
return false ;
return false ;
} else {
} else {
pinfo = Create ( addr , source , & nId ) ;
pinfo = Create ( addr , source , & nId ) ;
pinfo - > nTime = max ( ( int64_t ) 0 , ( int64_t ) pinfo - > nTime - nTimePenalty ) ;
pinfo - > nTime = std : : max ( ( int64_t ) 0 , ( int64_t ) pinfo - > nTime - nTimePenalty ) ;
nNew + + ;
nNew + + ;
fNew = true ;
fNew = true ;
}
}