summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaya Sugiura <ssugiura@jp.adit-jv.com>2020-07-28 18:08:45 +0900
committerSaya Sugiura <ssugiura@jp.adit-jv.com>2021-01-06 09:15:12 +0900
commit4f0e22354592f1f48587175e0a7e469808315c42 (patch)
tree649df07a0d634e477c4053156ad246d3320f0522
parent48ff267990acd9d1807d70071f2731a3f36a19e7 (diff)
downloadDLT-daemon-4f0e22354592f1f48587175e0a7e469808315c42.tar.gz
logstorage: snprintf return check
snprinf will return the number of characters printed if succeeded. related commits: 0ae98e7 snprintf ret > 0 is not always an error 676e8fc fix some gcc9 compiler warnings Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
-rw-r--r--src/offlinelogstorage/dlt_offline_logstorage_behavior.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/offlinelogstorage/dlt_offline_logstorage_behavior.c b/src/offlinelogstorage/dlt_offline_logstorage_behavior.c
index fa6aba5..9c121e0 100644
--- a/src/offlinelogstorage/dlt_offline_logstorage_behavior.c
+++ b/src/offlinelogstorage/dlt_offline_logstorage_behavior.c
@@ -89,9 +89,10 @@ void dlt_logstorage_log_file_name(char *log_file_name,
char stamp[DLT_OFFLINE_LOGSTORAGE_TIMESTAMP_LEN + 1] = { 0 };
time_t t = time(NULL);
struct tm tm_info;
+ ssize_t n = 0;
tzset();
localtime_r(&t, &tm_info);
- if (snprintf(stamp,
+ n = snprintf(stamp,
DLT_OFFLINE_LOGSTORAGE_TIMESTAMP_LEN + 1,
"%c%04d%02d%02d-%02d%02d%02d",
file_config->logfile_delimiter,
@@ -100,7 +101,8 @@ void dlt_logstorage_log_file_name(char *log_file_name,
tm_info.tm_mday,
tm_info.tm_hour,
tm_info.tm_min,
- tm_info.tm_sec) != 0) {
+ tm_info.tm_sec);
+ if (n < 0 || (size_t)n > (DLT_OFFLINE_LOGSTORAGE_TIMESTAMP_LEN + 1)) {
dlt_vlog(LOG_WARNING, "%s: snprintf truncation %s\n", __func__,
stamp);
}