From bd7d2785c0a33d61ea5068e4aecaffba05626150 Mon Sep 17 00:00:00 2001 From: Manikandan C Date: Fri, 9 Nov 2018 10:17:06 +0100 Subject: Protocol: DLT Service ID Enum instead of defines Signed-off-by: Christoph Lipka --- src/daemon/CMakeLists.txt | 2 +- src/lib/CMakeLists.txt | 2 +- src/shared/dlt_protocol.c | 90 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 92 insertions(+), 2 deletions(-) create mode 100644 src/shared/dlt_protocol.c (limited to 'src') diff --git a/src/daemon/CMakeLists.txt b/src/daemon/CMakeLists.txt index 9a22ccd..2f5c27a 100644 --- a/src/daemon/CMakeLists.txt +++ b/src/daemon/CMakeLists.txt @@ -20,7 +20,7 @@ if(WITH_SYSTEMD_WATCHDOG OR WITH_SYSTEMD) message( STATUS "Added ${systemd_SRCS} to dlt-daemon") endif(WITH_SYSTEMD_WATCHDOG OR WITH_SYSTEMD) -set(dlt_daemon_SRCS dlt-daemon.c dlt_daemon_common.c dlt_daemon_connection.c dlt_daemon_event_handler.c ${CMAKE_SOURCE_DIR}/src/gateway/dlt_gateway.c dlt_daemon_socket.c dlt_daemon_unix_socket.c dlt_daemon_serial.c dlt_daemon_client.c dlt_daemon_offline_logstorage.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_user_shared.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_common.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_shm.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_offline_trace.c ${CMAKE_SOURCE_DIR}/src/offlinelogstorage/dlt_offline_logstorage.c ${CMAKE_SOURCE_DIR}/src/lib/dlt_client.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_config_file_parser.c ${CMAKE_SOURCE_DIR}/src/offlinelogstorage/dlt_offline_logstorage_behavior.c) +set(dlt_daemon_SRCS dlt-daemon.c dlt_daemon_common.c dlt_daemon_connection.c dlt_daemon_event_handler.c ${CMAKE_SOURCE_DIR}/src/gateway/dlt_gateway.c dlt_daemon_socket.c dlt_daemon_unix_socket.c dlt_daemon_serial.c dlt_daemon_client.c dlt_daemon_offline_logstorage.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_user_shared.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_common.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_shm.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_offline_trace.c ${CMAKE_SOURCE_DIR}/src/offlinelogstorage/dlt_offline_logstorage.c ${CMAKE_SOURCE_DIR}/src/lib/dlt_client.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_config_file_parser.c ${CMAKE_SOURCE_DIR}/src/offlinelogstorage/dlt_offline_logstorage_behavior.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_protocol.c) add_executable(dlt-daemon ${dlt_daemon_SRCS} ${systemd_SRCS}) target_link_libraries(dlt-daemon rt ${CMAKE_THREAD_LIBS_INIT}) diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index 02b39fe..d20d954 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -15,7 +15,7 @@ # @licence end@ ####### -set(dlt_LIB_SRCS dlt_user dlt_client dlt_filetransfer dlt_env_ll ${CMAKE_SOURCE_DIR}/src/shared/dlt_common.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_user_shared.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_shm.c) +set(dlt_LIB_SRCS dlt_user dlt_client dlt_filetransfer dlt_env_ll ${CMAKE_SOURCE_DIR}/src/shared/dlt_common.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_user_shared.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_shm.c ${CMAKE_SOURCE_DIR}/src/shared/dlt_protocol.c) add_library(dlt ${dlt_LIB_SRCS}) target_link_libraries(dlt rt ${CMAKE_THREAD_LIBS_INIT}) diff --git a/src/shared/dlt_protocol.c b/src/shared/dlt_protocol.c new file mode 100644 index 0000000..78c335f --- /dev/null +++ b/src/shared/dlt_protocol.c @@ -0,0 +1,90 @@ +/* + * @licence app begin@ + * SPDX license identifier: MPL-2.0 + * + * Copyright (C) 2016 Advanced Driver Information Technology. + * This code is developed by Advanced Driver Information Technology. + * Copyright of Advanced Driver Information Technology, Bosch and DENSO. + * + * This file is part of GENIVI Project DLT - Diagnostic Log and Trace. + * + * This Source Code Form is subject to the terms of the + * Mozilla Public License (MPL), v. 2.0. + * If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. + * + * For further information see http://www.genivi.org/. + * @licence end@ + */ + +/*! + * \author + * Christoph Lipka + * + * \copyright Copyright © 2016 Advanced Driver Information Technology. \n + * License MPL-2.0: Mozilla Public License version 2.0 http://mozilla.org/MPL/2.0/. + * + * \file dlt_protocol.c + */ + +#include "dlt_protocol.h" + +const char *const dlt_service_names[] = +{ + "DLT_SERVICE_ID", + "DLT_SERVICE_ID_SET_LOG_LEVEL", + "DLT_SERVICE_ID_SET_TRACE_STATUS", + "DLT_SERVICE_ID_GET_LOG_INFO", + "DLT_SERVICE_ID_GET_DEFAULT_LOG_LEVEL", + "DLT_SERVICE_ID_STORE_CONFIG", + "DLT_SERVICE_ID_RESET_TO_FACTORY_DEFAULT", + "DLT_SERVICE_ID_SET_COM_INTERFACE_STATUS", + "DLT_SERVICE_ID_SET_COM_INTERFACE_MAX_BANDWIDTH", + "DLT_SERVICE_ID_SET_VERBOSE_MODE", + "DLT_SERVICE_ID_SET_MESSAGE_FILTERING", + "DLT_SERVICE_ID_SET_TIMING_PACKETS", + "DLT_SERVICE_ID_GET_LOCAL_TIME", + "DLT_SERVICE_ID_USE_ECU_ID", + "DLT_SERVICE_ID_USE_SESSION_ID", + "DLT_SERVICE_ID_USE_TIMESTAMP", + "DLT_SERVICE_ID_USE_EXTENDED_HEADER", + "DLT_SERVICE_ID_SET_DEFAULT_LOG_LEVEL", + "DLT_SERVICE_ID_SET_DEFAULT_TRACE_STATUS", + "DLT_SERVICE_ID_GET_SOFTWARE_VERSION", + "DLT_SERVICE_ID_MESSAGE_BUFFER_OVERFLOW" +}; +const char *const dlt_user_service_names[] = +{ + "DLT_USER_SERVICE_ID", + "DLT_SERVICE_ID_UNREGISTER_CONTEXT", + "DLT_SERVICE_ID_CONNECTION_INFO", + "DLT_SERVICE_ID_TIMEZONE", + "DLT_SERVICE_ID_MARKER", + "DLT_SERVICE_ID_OFFLINE_LOGSTORAGE", + "DLT_SERVICE_ID_SET_FILTER_LEVEL", + "DLT_SERVICE_ID_GET_FILTER_STATUS", + "DLT_SERVICE_ID_PASSIVE_NODE_CONNECT", + "DLT_SERVICE_ID_PASSIVE_NODE_CONNECTION_STATUS", + "DLT_SERVICE_ID_SET_ALL_LOG_LEVEL" +}; + +const char *dlt_get_service_name(unsigned int id) +{ + if (id == DLT_SERVICE_ID_CALLSW_CINJECTION) + { + return "DLT_SERVICE_ID_CALLSW_CINJECTION"; + } + else if ((id == DLT_SERVICE_ID) || (id >= DLT_USER_SERVICE_ID_LAST_ENTRY) || + (id >= DLT_SERVICE_ID_LAST_ENTRY && id <= DLT_USER_SERVICE_ID)) + { + return "UNDEFINED"; + } + else if ((id > DLT_SERVICE_ID) && (id < DLT_SERVICE_ID_LAST_ENTRY)) + { + return dlt_service_names[id]; + } + else /* user services */ + { + return dlt_user_service_names[id&0xFF]; + } +} -- cgit v1.2.1