@@ -280,6 +280,7 @@ void CPrivateSendServer::SetNull()
280
280
{
281
281
// MN side
282
282
vecSessionCollaterals.clear ();
283
+ nSessionMaxParticipants = NULL ;
283
284
284
285
CPrivateSendBaseSession::SetNull ();
285
286
CPrivateSendBaseManager::SetNull ();
@@ -295,7 +296,7 @@ void CPrivateSendServer::CheckPool(CConnman& connman)
295
296
LogPrint (" privatesend" , " CPrivateSendServer::CheckPool -- entries count %lu\n " , GetEntriesCount ());
296
297
297
298
// If entries are full, create finalized transaction
298
- if (nState == POOL_STATE_ACCEPTING_ENTRIES && GetEntriesCount () >= CPrivateSend::GetMaxPoolTransactions () ) {
299
+ if (nState == POOL_STATE_ACCEPTING_ENTRIES && GetEntriesCount () >= nSessionMaxParticipants ) {
299
300
LogPrint (" privatesend" , " CPrivateSendServer::CheckPool -- FINALIZE TRANSACTIONS\n " );
300
301
CreateFinalTransaction (connman);
301
302
return ;
@@ -435,10 +436,10 @@ void CPrivateSendServer::ChargeFees(CConnman& connman)
435
436
if (vecOffendersCollaterals.empty ()) return ;
436
437
437
438
// mostly offending? Charge sometimes
438
- if ((int )vecOffendersCollaterals.size () >= Params (). PoolMaxTransactions () - 1 && GetRandInt (100 ) > 33 ) return ;
439
+ if ((int )vecOffendersCollaterals.size () >= nSessionMaxParticipants - 1 && GetRandInt (100 ) > 33 ) return ;
439
440
440
441
// everyone is an offender? That's not right
441
- if ((int )vecOffendersCollaterals.size () >= Params (). PoolMaxTransactions () ) return ;
442
+ if ((int )vecOffendersCollaterals.size () >= nSessionMaxParticipants ) return ;
442
443
443
444
// charge one of the offenders randomly
444
445
std::random_shuffle (vecOffendersCollaterals.begin (), vecOffendersCollaterals.end ());
@@ -593,7 +594,7 @@ bool CPrivateSendServer::AddEntry(const CPrivateSendEntry& entryNew, PoolMessage
593
594
return false ;
594
595
}
595
596
596
- if (GetEntriesCount () >= CPrivateSend::GetMaxPoolTransactions () ) {
597
+ if (GetEntriesCount () >= nSessionMaxParticipants ) {
597
598
LogPrint (" privatesend" , " CPrivateSendServer::AddEntry -- entries is full!\n " );
598
599
nMessageIDRet = ERR_ENTRIES_FULL;
599
600
return false ;
@@ -722,6 +723,7 @@ bool CPrivateSendServer::CreateNewSession(const CPrivateSendAccept& dsa, PoolMes
722
723
nMessageIDRet = MSG_NOERR;
723
724
nSessionID = GetRandInt (999999 ) + 1 ;
724
725
nSessionDenom = dsa.nDenom ;
726
+ nSessionMaxParticipants = CPrivateSend::GetMinPoolParticipants () + GetRandInt (CPrivateSend::GetMaxPoolParticipants () - CPrivateSend::GetMinPoolParticipants () + 1 );
725
727
726
728
SetState (POOL_STATE_QUEUE);
727
729
nTimeLastSuccessfulStep = GetTime ();
0 commit comments