mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-01-22 08:14:15 +00:00
fixed #1429. Don't use monotonic timer for Win32
This commit is contained in:
parent
28aac6f93b
commit
dfdd76a1bb
@ -27,7 +27,12 @@ namespace i2p
|
|||||||
void RouterContext::Init ()
|
void RouterContext::Init ()
|
||||||
{
|
{
|
||||||
srand (i2p::util::GetMillisecondsSinceEpoch () % 1000);
|
srand (i2p::util::GetMillisecondsSinceEpoch () % 1000);
|
||||||
|
#ifdef WIN32
|
||||||
|
// for compatibility with WinXP
|
||||||
|
m_StartupTime = i2p::util::GetSecondsSinceEpoch ();
|
||||||
|
#else
|
||||||
m_StartupTime = std::chrono::steady_clock::now();
|
m_StartupTime = std::chrono::steady_clock::now();
|
||||||
|
#endif
|
||||||
if (!Load ())
|
if (!Load ())
|
||||||
CreateNewRouter ();
|
CreateNewRouter ();
|
||||||
m_Decryptor = m_Keys.CreateDecryptor (nullptr);
|
m_Decryptor = m_Keys.CreateDecryptor (nullptr);
|
||||||
@ -716,7 +721,12 @@ namespace i2p
|
|||||||
|
|
||||||
uint32_t RouterContext::GetUptime () const
|
uint32_t RouterContext::GetUptime () const
|
||||||
{
|
{
|
||||||
|
#ifdef WIN32
|
||||||
|
// for compatibility with WinXP
|
||||||
|
return i2p::util::GetSecondsSinceEpoch () - m_StartupTime;
|
||||||
|
#else
|
||||||
return std::chrono::duration_cast<std::chrono::seconds> (std::chrono::steady_clock::now() - m_StartupTime).count ();
|
return std::chrono::duration_cast<std::chrono::seconds> (std::chrono::steady_clock::now() - m_StartupTime).count ();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
bool RouterContext::Decrypt (const uint8_t * encrypted, uint8_t * data, BN_CTX * ctx) const
|
bool RouterContext::Decrypt (const uint8_t * encrypted, uint8_t * data, BN_CTX * ctx) const
|
||||||
|
@ -137,7 +137,11 @@ namespace i2p
|
|||||||
std::shared_ptr<i2p::crypto::CryptoKeyDecryptor> m_Decryptor;
|
std::shared_ptr<i2p::crypto::CryptoKeyDecryptor> m_Decryptor;
|
||||||
uint64_t m_LastUpdateTime; // in seconds
|
uint64_t m_LastUpdateTime; // in seconds
|
||||||
bool m_AcceptsTunnels, m_IsFloodfill;
|
bool m_AcceptsTunnels, m_IsFloodfill;
|
||||||
|
#ifdef WIN32
|
||||||
|
uint64_t m_StartupTime = 0; // in seconds since epoch
|
||||||
|
#else
|
||||||
std::chrono::time_point<std::chrono::steady_clock> m_StartupTime;
|
std::chrono::time_point<std::chrono::steady_clock> m_StartupTime;
|
||||||
|
#endif
|
||||||
uint64_t m_BandwidthLimit; // allowed bandwidth
|
uint64_t m_BandwidthLimit; // allowed bandwidth
|
||||||
int m_ShareRatio;
|
int m_ShareRatio;
|
||||||
RouterStatus m_Status;
|
RouterStatus m_Status;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user