x509_get_current_time() uses localtime_r() to prevent thread issues

This commit is contained in:
Paul Bakker 2014-03-26 15:34:54 +01:00
parent 4c284c9141
commit 5fff23b92a
2 changed files with 9 additions and 8 deletions

View File

@ -59,6 +59,7 @@ Bugfix
* ssl_handshake_init() was leaving dirty pointers in subcontexts if malloc * ssl_handshake_init() was leaving dirty pointers in subcontexts if malloc
of one of them failed of one of them failed
* Fix typo in rsa_copy() that impacted PKCS#1 v2 contexts * Fix typo in rsa_copy() that impacted PKCS#1 v2 contexts
* x509_get_current_time() uses localtime_r() to prevent thread issues
= PolarSSL 1.3.4 released on 2014-01-27 = PolarSSL 1.3.4 released on 2014-01-27
Features Features

View File

@ -636,18 +636,18 @@ static void x509_get_current_time( x509_time *now )
now->min = st.wMinute; now->min = st.wMinute;
now->sec = st.wSecond; now->sec = st.wSecond;
#else #else
struct tm *lt; struct tm lt;
time_t tt; time_t tt;
tt = time( NULL ); tt = time( NULL );
lt = localtime( &tt ); localtime_r( &tt, &lt );
now->year = lt->tm_year + 1900; now->year = lt.tm_year + 1900;
now->mon = lt->tm_mon + 1; now->mon = lt.tm_mon + 1;
now->day = lt->tm_mday; now->day = lt.tm_mday;
now->hour = lt->tm_hour; now->hour = lt.tm_hour;
now->min = lt->tm_min; now->min = lt.tm_min;
now->sec = lt->tm_sec; now->sec = lt.tm_sec;
#endif #endif
} }