summaryrefslogtreecommitdiff
path: root/src/daemon/dlt-daemon.c
diff options
context:
space:
mode:
authorRadoslaw Kaczorowski <external.radoslaw.kaczorowski@bosch-softtec.com>2019-06-17 11:19:22 +0700
committerSaya Sugiura <39760799+ssugiura@users.noreply.github.com>2019-07-03 11:48:10 +0900
commit646f76c58bc81b2d41163b2e9dfcf279ebd9e887 (patch)
tree81f1f4d9532e28ec006e71c268c739fd71e13828 /src/daemon/dlt-daemon.c
parentb757183f51920e8445ed0ea0bbdb490d99781ec6 (diff)
downloadDLT-daemon-646f76c58bc81b2d41163b2e9dfcf279ebd9e887.tar.gz
define DLT_PATH_MAX for max path buffer length
DLT limits the path length and does not do anything else to determine the actual value, because the least that is supported on any system that DLT runs on is 1024 bytes. Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
Diffstat (limited to 'src/daemon/dlt-daemon.c')
-rw-r--r--src/daemon/dlt-daemon.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/daemon/dlt-daemon.c b/src/daemon/dlt-daemon.c
index 9144b2a..50e178c 100644
--- a/src/daemon/dlt-daemon.c
+++ b/src/daemon/dlt-daemon.c
@@ -130,7 +130,8 @@ int option_handling(DltDaemonLocal *daemon_local, int argc, char *argv[])
/* default values */
daemon_local->flags.port = DLT_DAEMON_TCP_PORT;
- strncpy(dltFifoBaseDir, DLT_USER_IPC_PATH, sizeof(DLT_USER_IPC_PATH));
+ strncpy(dltFifoBaseDir, DLT_USER_IPC_PATH, DLT_PATH_MAX);
+ dltFifoBaseDir[DLT_PATH_MAX - 1] = 0;
opterr = 0;
@@ -148,7 +149,8 @@ int option_handling(DltDaemonLocal *daemon_local, int argc, char *argv[])
}
case 't':
{
- strncpy(dltFifoBaseDir, optarg, NAME_MAX);
+ strncpy(dltFifoBaseDir, optarg, DLT_PATH_MAX);
+ dltFifoBaseDir[DLT_PATH_MAX - 1] = 0;
break;
}
case 'p':
@@ -189,9 +191,11 @@ int option_handling(DltDaemonLocal *daemon_local, int argc, char *argv[])
#ifndef DLT_USE_UNIX_SOCKET_IPC
- snprintf(daemon_local->flags.userPipesDir, NAME_MAX + 1, "%s/dltpipes", dltFifoBaseDir);
+ snprintf(daemon_local->flags.userPipesDir, DLT_PATH_MAX,
+ "%s/dltpipes", dltFifoBaseDir);
#endif
- snprintf(daemon_local->flags.daemonFifoName, NAME_MAX + 1, "%s/dlt", dltFifoBaseDir);
+ snprintf(daemon_local->flags.daemonFifoName, DLT_PATH_MAX,
+ "%s/dlt", dltFifoBaseDir);
return 0;
@@ -220,10 +224,9 @@ int option_file_parser(DltDaemonLocal *daemon_local)
daemon_local->flags.loggingMode = DLT_LOG_TO_CONSOLE;
daemon_local->flags.loggingLevel = LOG_INFO;
snprintf(daemon_local->flags.loggingFilename,
- sizeof(daemon_local->flags.loggingFilename) - 1,
+ sizeof(daemon_local->flags.loggingFilename),
"%s/dlt.log",
dltFifoBaseDir);
- daemon_local->flags.loggingFilename[sizeof(daemon_local->flags.loggingFilename) - 1] = 0;
daemon_local->timeoutOnSend = 4;
daemon_local->RingbufferMinSize = DLT_DAEMON_RINGBUFFER_MIN_SIZE;
daemon_local->RingbufferMaxSize = DLT_DAEMON_RINGBUFFER_MAX_SIZE;
@@ -1296,9 +1299,9 @@ void dlt_daemon_local_cleanup(DltDaemon *daemon, DltDaemonLocal *daemon_local, i
void dlt_daemon_exit_trigger()
{
- char tmp[PATH_MAX + 1] = { 0 };
+ char tmp[DLT_PATH_MAX] = { 0 };
- snprintf(tmp, PATH_MAX, "%s/dlt", dltFifoBaseDir);
+ snprintf(tmp, DLT_PATH_MAX, "%s/dlt", dltFifoBaseDir);
(void)unlink(tmp);
/* stop event loop */