summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaya Sugiura <ssugiura@jp.adit-jv.com>2020-07-28 18:08:45 +0900
committerSaya Sugiura <39760799+ssugiura@users.noreply.github.com>2021-01-06 09:27:28 +0900
commit2b92c259db950c2aef03f14e47e4994546765265 (patch)
tree649df07a0d634e477c4053156ad246d3320f0522
parent948af43410be135118bd6dc0f1d41029b0bcc4d6 (diff)
downloadDLT-daemon-2b92c259db950c2aef03f14e47e4994546765265.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);
}