FN_START;
struct tm local_time;
int year;
+ int buf_len = 0;
int month;
if (!localtime_r(ltime, &local_time))
year = local_time.tm_year + 1900; /* years since 1900 */
month = local_time.tm_mon + 1; /* months since January */
- snprintf(timestamp, 16, "%04d%02d%02dT%02d%02d%02d", year, month,
- local_time.tm_mday, local_time.tm_hour,
- local_time.tm_min, local_time.tm_sec);
+ buf_len = snprintf(timestamp, 16, "%04hu%02hu%02huT%02hu%02hu%02hu",(unsigned short int)year, (unsigned short int)month,
+ (unsigned short int)local_time.tm_mday, (unsigned short int)local_time.tm_hour,
+ (unsigned short int)local_time.tm_min, (unsigned short int)local_time.tm_sec);
+
+ if (buf_len < 0)
+ ERR("Encoding error occured in snprintf");
FN_END;
}