diff options
author | Alexander Mohr <alexander.m.mohr@mercedes-benz.com> | 2022-10-05 10:32:15 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-05 10:32:15 +0200 |
commit | 5b80a4c92c9aa9ef45ce1da599b401ba631a86ed (patch) | |
tree | a8fa737aa20b222808a643516857cd9c5e2d23ac /CMakeLists.txt | |
parent | 34471d85fca14a5ec359d2d06a8d7018cb23beb2 (diff) | |
download | DLT-daemon-5b80a4c92c9aa9ef45ce1da599b401ba631a86ed.tar.gz |
internal-logging: Fix issues with file logging (#378)
This commit fixes the following issues if access
to the internal log file is not possible (logging_mode = DLT_LOG_TO_FILE)
* dlt_log_free tried to call fclose on a nullptr
Added a nullcheck for this
* Access to log file might be denied but access to logs is still wanted
Add a new CMake option WITH_DLT_FILE_LOGGING_SYSLOG_FALLBACK
If this is set to ON and the logging moe is set to file,
the dlt-daemon will fall back to syslog if opening the internal log
file failed
Signed-off-by: Alexander Mohr <alexander.m.mohr@mercedes-benz.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 2bcad1f..8022852 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -74,6 +74,7 @@ option(WITH_DLT_DBUS "Set to ON to build src/dbus binaries" option(WITH_DLT_TESTS "Set to ON to build src/test binaries" ON) option(WITH_DLT_UNIT_TESTS "Set to ON to build gtest framework and tests/binaries" OFF) option(WITH_DLT_QNX_SYSTEM "Set to ON to build QNX system binary dlt-qnx-system" OFF) +option(WITH_DLT_FILE_LOGGING_SYSLOG_FALLBACK "Set to ON to enable fallback to syslog if dlt logging to file fails" OFF) set(DLT_IPC "FIFO" CACHE STRING "UNIX_SOCKET,FIFO") set(DLT_USER "genivi" CACHE STRING "Set user for process not run as root") @@ -171,6 +172,10 @@ if(WITH_DLT_QNX_SYSTEM AND NOT "${CMAKE_C_COMPILER}" MATCHES "nto-qnx|qcc") message(FATAL_ERROR "Can only compile for QNX with a QNX compiler.") endif() +if (WITH_DLT_FILE_LOGGING_SYSLOG_FALLBACK) + add_definitions(-DWITH_DLT_FILE_LOGGING_SYSLOG_FALLBACK) +endif() + if(WITH_GPROF) add_compile_options(-pg) endif() @@ -345,6 +350,7 @@ message(STATUS "WITH_LIB_SHORT_VERSION = ${WITH_LIB_SHORT_VERSION}") message(STATUS "WITH_LEGACY_INCLUDE_PATH = ${WITH_LEGACY_INCLUDE_PATH}") message(STATUS "WITH_EXTENDED_FILTERING = ${WITH_EXTENDED_FILTERING}") message(STATUS "WITH_DLT_DISABLE_MACRO = ${WITH_DLT_DISABLE_MACRO}") +message(STATUS "WITH_DLT_FILE_LOGGING_SYSLOG_FALLBACK = ${WITH_DLT_FILE_LOGGING_SYSLOG_FALLBACK}" ) message(STATUS "Change a value with: cmake -D<Variable>=<Value>") message(STATUS "-------------------------------------------------------------------------------") message(STATUS) |