With coreSNTP versions >=v2.0.0, there are breaking changes that need to be addressed when upgrading.
Sntp_ConvertToUnixTime function now uses uint32_t * instead of UnixTime_t * for the Unix time seconds parameter. This change was made because:
uint32_t Unix timestamp can represent dates until February 7, 2106 06:28:15 UTCuint64_tThus, the signature of Sntp_ConvertToUnixTime changed from:
SntpStatus_t Sntp_ConvertToUnixTime( const SntpTimestamp_t * pSntpTime,
UnixTime_t * pUnixTimeSecs,
uint32_t * pUnixTimeMicrosecs );
to:
SntpStatus_t Sntp_ConvertToUnixTime( const SntpTimestamp_t * pSntpTime,
uint32_t * pUnixTimeSecs,
uint32_t * pUnixTimeMicrosecs );
To migrate, update any code that uses UnixTime_t for storing the Unix time seconds value to use uint32_t instead.
Old Code Snippet:
SntpTimestamp_t sntpTime;
UnixTime_t unixTimeSecs;
uint32_t unixTimeMicrosecs;
SntpStatus_t status;
// Assume sntpTime has been populated from an SNTP response
status = Sntp_ConvertToUnixTime( &sntpTime, &unixTimeSecs, &unixTimeMicrosecs );
New Code Snippet:
SntpTimestamp_t sntpTime;
uint32_t unixTimeSecs;
uint32_t unixTimeMicrosecs;
SntpStatus_t status;
// Assume sntpTime has been populated from an SNTP response
status = Sntp_ConvertToUnixTime( &sntpTime, &unixTimeSecs, &unixTimeMicrosecs );