diff options
author | Vo Trung Chi <chi.votrung@vn.bosch.com> | 2019-08-01 07:38:42 +0700 |
---|---|---|
committer | Saya Sugiura <39760799+ssugiura@users.noreply.github.com> | 2019-08-01 09:38:42 +0900 |
commit | 3f7dc3fd80e7fe548f89b96ab4228135dca688db (patch) | |
tree | efa1473fbd73b559fc6340c35479d060d2349553 /src/shared/dlt_common.c | |
parent | 8673795b845e461e42920e44cdf70a5361457e8b (diff) | |
download | DLT-daemon-3f7dc3fd80e7fe548f89b96ab4228135dca688db.tar.gz |
using POSIX shared memory APIs (#90) (#151)
Replace all Linux specific shared memory APIs with POSIX alternatives.
Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
Diffstat (limited to 'src/shared/dlt_common.c')
-rw-r--r-- | src/shared/dlt_common.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/shared/dlt_common.c b/src/shared/dlt_common.c index 58896f6..8cb9413 100644 --- a/src/shared/dlt_common.c +++ b/src/shared/dlt_common.c @@ -67,6 +67,10 @@ const char dltSerialHeader[DLT_ID_SIZE] = { 'D', 'L', 'S', 1 }; char dltSerialHeaderChar[DLT_ID_SIZE] = { 'D', 'L', 'S', 1 }; char dltFifoBaseDir[DLT_PATH_MAX] = "/tmp"; +#ifdef DLT_SHM_ENABLE +char dltShmName[NAME_MAX + 1] = "/dlt-shm"; +#endif + /* internal logging parameters */ static int logging_mode = DLT_LOG_TO_CONSOLE; static int logging_level = LOG_INFO; @@ -1703,6 +1707,14 @@ void dlt_log_set_fifo_basedir(const char *env_pipe_dir) dltFifoBaseDir[DLT_PATH_MAX - 1] = 0; } +#ifdef DLT_SHM_ENABLE +void dlt_log_set_shm_name(const char * env_shm_name) +{ + strncpy(dltShmName, env_shm_name, NAME_MAX); + dltShmName[NAME_MAX] = 0; +} +#endif + void dlt_log_init(int mode) { if ((mode < DLT_LOG_TO_CONSOLE) || (mode > DLT_LOG_DROPPED)) { @@ -3704,6 +3716,14 @@ void dlt_check_envvar() if (env_pipe_dir != NULL) dlt_log_set_fifo_basedir(env_pipe_dir); + +#ifdef DLT_SHM_ENABLE + char* env_shm_name = getenv("DLT_SHM_NAME"); + if (env_shm_name != NULL) + { + dlt_log_set_shm_name(env_shm_name); + } +#endif } int dlt_set_loginfo_parse_service_id(char *resp_text, |