Merge pull request #1558

7961878e initialize timestamp to 0 and check for mktime() error (Chris Vickio)
This commit is contained in:
Riccardo Spagni 2017-01-13 14:36:42 -05:00
commit cbb39b499b
No known key found for this signature in database
GPG Key ID: 55432DF31CCD4FCD

View File

@ -72,7 +72,7 @@ DISABLE_VS_WARNINGS(4244 4345)
generate_keys(m_keys.m_account_address.m_view_public_key, m_keys.m_view_secret_key, second, two_random ? false : true); generate_keys(m_keys.m_account_address.m_view_public_key, m_keys.m_view_secret_key, second, two_random ? false : true);
struct tm timestamp; struct tm timestamp = {0};
timestamp.tm_year = 2014 - 1900; // year 2014 timestamp.tm_year = 2014 - 1900; // year 2014
timestamp.tm_mon = 6 - 1; // month june timestamp.tm_mon = 6 - 1; // month june
timestamp.tm_mday = 8; // 8th of june timestamp.tm_mday = 8; // 8th of june
@ -82,7 +82,7 @@ DISABLE_VS_WARNINGS(4244 4345)
if (recover) if (recover)
{ {
m_creation_timestamp = mktime(&timestamp); m_creation_timestamp = std::max(mktime(&timestamp), (long)0);
} }
else else
{ {
@ -97,7 +97,7 @@ DISABLE_VS_WARNINGS(4244 4345)
m_keys.m_spend_secret_key = spendkey; m_keys.m_spend_secret_key = spendkey;
m_keys.m_view_secret_key = viewkey; m_keys.m_view_secret_key = viewkey;
struct tm timestamp; struct tm timestamp = {0};
timestamp.tm_year = 2014 - 1900; // year 2014 timestamp.tm_year = 2014 - 1900; // year 2014
timestamp.tm_mon = 4 - 1; // month april timestamp.tm_mon = 4 - 1; // month april
timestamp.tm_mday = 15; // 15th of april timestamp.tm_mday = 15; // 15th of april
@ -105,7 +105,7 @@ DISABLE_VS_WARNINGS(4244 4345)
timestamp.tm_min = 0; timestamp.tm_min = 0;
timestamp.tm_sec = 0; timestamp.tm_sec = 0;
m_creation_timestamp = mktime(&timestamp); m_creation_timestamp = std::max(mktime(&timestamp), (long)0);
} }
//----------------------------------------------------------------- //-----------------------------------------------------------------
void account_base::create_from_viewkey(const cryptonote::account_public_address& address, const crypto::secret_key& viewkey) void account_base::create_from_viewkey(const cryptonote::account_public_address& address, const crypto::secret_key& viewkey)