summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* dlt_common: Use defined macroVo Trung Chi2019-09-131-1/+1
| | | | Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* libdlt: calculate resend buffer memoryBui Nguyen Quoc Thanh2019-09-131-19/+29
| | | | | | | | | | | | | | The fix from commit 376bf6c is considered as a workaround. From now, the resend buffer size is calculated based on (dlt_user.log_buf_len + header_size) - Remove the macro DLT_USER_EXTRA_BUFF_SIZE - Use env_disable_extended_header_for_nonverbose instead of env_nonverbose_extended_header Related commit: 376bf6c Size of Resend buffer less than or equal to DLT_USER_BUF_MAX_SIZE res… (#116) Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* lib: Disable extended header in non verbose mode by env varOnkar Palkar2019-09-134-3/+523
| | | | | | | dlt-test-non-verbose test application is also added. Signed-off-by: Onkar Palkar <onkar.palkar@wipro.com> Signed-off-by: S. Hameed <shameed@jp.adit-jv.com>
* shm: Resend dlt msg when client connectVo Trung Chi2019-09-136-282/+159
| | | | | | | | After dlt-client connects to dlt-daemon successfully, all the stored dlt messages in daemon was not flushed to dlt client when using shared memory as IPC. It is harmonized with dlt_daemon_process_user_message_log(). Signed-off-by: Vo Trung Chi <chi.votrung@vn.bosch.com>
* lib: Remove else nothingSaya Sugiura2019-09-131-2/+0
| | | | | | Remove "else nothing" to correct code behavior. Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* network trace: Do not allow DLT usage in forked childVo Trung Chi2019-09-131-0/+4
| | | | | | | dlt_user_trace_network_segmented() shall not be used in forked child process. Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* lib: Assign fd after it's closedSaya Sugiura2019-09-131-0/+1
| | | | Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* console: Add get sw version control msgVo Trung Chi2019-09-132-83/+213
| | | | | | | | dlt-control command is extended to send get software version control message. e.g: dlt-control -k localhost Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* console: Tool to merge multiple DLT filesBui Nguyen Quoc Thanh2019-09-132-44/+279
| | | | | | | | | | | | | | - Sort in dlt-sortbytimestamp: first sorted by time, second sorted by timestamp. - Support multiple compressed files in dlt-convert. These changes is based on use case: User can expects to join several dlt files which are compressed in tar.gz file (maybe per component). Moreover, currently the existing sort is only applicaple for single boot cycle. There should be a support for sorting multiple cyclic boots in one dlt file. Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* dlt-test: Add message length optionBui Nguyen Quoc Thanh2019-09-132-5/+45
| | | | | | | | | | | | | New option is introduced for binary dlt-test-multi-process. It is used to specify the length of message to be sent. By default, when no length is specified, the current sample message will be sent. It is also used in dlt-test-multi-process-client. Also fixes: - Legacy bug: MAX_THREADS instead of MAX_PROCS - Correct coding style Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* Add user custom timestamp interfaceSebastian Unger2019-09-136-12/+120
| | | | | | | | | | | | | Two new macros are introduced so that users can use their customized timestamps for DLT messages: - DLT_LOG_TS(CONTEXT, LOGLEVEL, TS, ARGS ...) - DLT_LOG_ID_TS(CONTEXT, LOGLEVEL, MSGID, TS, ARGS ...) Detailed explanations can be found in dlt_for_developers.md. Also a new option is added to dlt-system to use events' timestamps from journald adapter. Signed-off-by: Sebastian Unger <sunger@de.adit-jv.com>
* dlt-daemon: correct errno usageVo Trung Chi2019-09-031-7/+9
| | | | | | | The errno must be saved in order to use with dlt_vlog() because the errno will be overwriten in dlt_vlog(). Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* dlt-daemon: fix bug binding invalid ipv6 address as defaultVo Trung Chi2019-09-031-2/+5
| | | | | | | The default INADDR_ANY is used ("0.0.0.0") as before. But it's invalid when DLT_USE_IPv6 flag ON. Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* Add option in dlt.conf for bindAddress to specific IPs (#130)AdrianStoenescu2019-09-035-70/+155
| | | | | | | | | | | | | | | | | | | | | | | | Add the possibility to have in dlt.conf an option that specifies a set of IP addresses. The daemon will do a socket bind only for this list, therefore external connections will be limited to this set of IP addresses. If this option is not given, the default INADDR_ANY is used ("0.0.0.0") as before. The option in dlt.conf can look like this: BindAddress = 160.48.199.98;160.48.199.97;160.48.199.226,160.48.199.186;160.48.199.139;172.16.222.99 There can be as many addresses but only specified on one single line. They have to be delimited by ',' or ';'. ' ' (space) delimiter does not work. IPv6 addresses are supported as well. For instance: BindAddress = fe80::255:7bff:feb5:7df7 IPv6 addresses are acceptable only if DLT_USE_IPv6 flag is ON at compile time. IPv4 addresses are acceptable only if DLT_USE_IPv6 flag is OFF at compile time. One cannot have both IPv4 and IPv6 format in the same time. Signed-off-by: Adrian Stoenescu Adrian.Stoenescu@harman.com
* protocol: Remove non supported user service ID (#159)Saya Sugiura2019-09-022-14/+18
| | | | | | | | | | With this commit, following DLT user service IDs are now free to use: - 0xF0A - 0xF0F to 0xFFE Also the cases in dlt_daemon_client_process_control() is reordered so that it matches the order of dlt_user_services enum. Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* libdlt: truncate the log message if it is too long (#156) (#157)Vo Trung Chi2019-09-021-90/+147
| | | | | | | | | | | | Change the behavior of dlt_user_log_write_string, dlt_user_log_write_constant_string and dlt_user_log_write_utf8_string so that they truncate the incoming message if it is too big and add "Message truncated, too long" at the end of it. These function should anyway still return an DLT_RETURN_USER_BUFFER_FULL error in this case. Signed-off-by: Nguyen Dinh Thi (RBVH/ENG2) <Thi.NguyenDinh@vn.bosch.com> Signed-off-by: Vo Trung Chi <chi.votrung@vn.bosch.com>
* UDP Multicast implementation (#155)Sunil-K-S2019-08-2311-3/+669
| | | | | The feature can be enabled by setting WITH_UDP_CONNECTION to ON. Signed-off-by: sunil.s <sunil.s@lge.com>
* daemon: fix compile error with DLT_IPC="UNIX_SOCKET" (#153)Vo Trung Chi2019-08-021-0/+2
| | | Signed-off-by: Vo Trung Chi <chi.votrung@vn.bosch.com>
* using POSIX shared memory APIs (#90) (#151)Vo Trung Chi2019-08-015-120/+299
| | | | | Replace all Linux specific shared memory APIs with POSIX alternatives. Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* Revert "Add option in dlt.conf for bindAddress to specific IPs (#130)"Saya Sugiura2019-08-015-152/+70
| | | | This reverts commit e8716cc5c950e50411b23a7a6cafa3c063c59e90.
* Add option to set owner group of daemon FIFO (#122)Jiri Popek2019-07-253-3/+47
| | | | | | | | | | New option to set owner group of daemon FIFO (Default: /tmp/dlt) is added in dlt.conf. If this option is used properly, more secure tracing can be realized. Only application that is in dlt_user_apps_group can write log message to daemon FIFO. Signed-off-by: Yusuke Sato <yusuke-sato@apn.alpine.co.jp>
* Add option in dlt.conf for bindAddress to specific IPs (#130)AdrianStoenescu2019-07-255-70/+152
| | | | | | | | | | | | | | | | | | | | | | | Add the possibility to have in dlt.conf an option that specifies a set of IP addresses. The daemon will do a socket bind only for this list, therefore external connections will be limited to this set of IP addresses. If this option is not given, the default INADDR_ANY is used ("0.0.0.0") as before. The option in dlt.conf can look like this: BindAddress = 160.48.199.98;160.48.199.97;160.48.199.226,160.48.199.186;160.48.199.139;172.16.222.99 There can be as many addresses but only specified on one single line. They have to be delimited by ',' or ';'. ' ' (space) delimiter does not work. IPv6 addresses are supported as well. For instance: BindAddress = fe80::255:7bff:feb5:7df7 IPv6 addresses are acceptable only if DLT_USE_IPv6 flag is ON at compile time. IPv4 addresses are acceptable only if DLT_USE_IPv6 flag is OFF at compile time. One cannot have both IPv4 and IPv6 format in the same time. Signed-off-by: Adrian Stoenescu Adrian.Stoenescu@harman.com
* dlt-system-journal: fixed localtime compile errorjiripopek2019-07-251-1/+1
| | | | | | | fixes compiler error "error: too many arguments to function ‘localtime’" Signed-off-by: jiripopek <Jiri.Popek@bmw.de>
* Correct sa findingsSaya Sugiura2019-07-248-45/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dlt_offline_logstorage.c - Parameter to isdigit is not correct - Handle the size of memset() and strncpy() properly dlt-test-stress-user.c - Parameter d is duplicated dlt_env_ll.c - Parameter env is used before NULL check - Remove redundant line dlt-control-common.c dlt_daemon_event_handler.c - Do not use NULL variable to print log dlt_config_file_parser.c - Remove unnecessary loop dlt_daemon_client.c - Return error in NULL check dlt_user.c - Free allocated memory in error case Related commit: 5c8f88d logstorage: fix compile error Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* logstorage: fix compile errorjiripopek2019-07-221-1/+1
| | | | | | Mount path unitialized and it is always NULL inside the statement. Signed-off-by: jiripopek <Jiri.Popek@bmw.de>
* doxygen: Align variable for apid and ctidSaya Sugiura2019-07-1911-144/+145
| | | | | | | The variables used for application id and context id are aligned with "apid" and "ctid". Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* doxygen: Remove licenceSaya Sugiura2019-07-19132-264/+0
| | | | Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* doxygen: Get rid of warningsSaya Sugiura2019-07-1925-70/+103
| | | | Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* cmake: Allow build as a subproject (#145)Vo Trung Chi2019-07-093-9/+9
| | | | | | Use PROJECT_* instead of CMAKE_* to allow build as a subproject of another cmake project. Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* fix config path for dlt-dbusRadoslaw Kaczorowski2019-07-034-9/+10
| | | | | | use default config path relative to CONFIGURATION_FILES_DIR Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* define DLT_PATH_MAX for max path buffer lengthRadoslaw Kaczorowski2019-07-034-24/+29
| | | | | | | | 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>
* cmake-improvements (#135)Vo Trung Chi2019-07-034-105/+117
| | | | | | | | | | | | | | | 1. Allow building as a subproject of another cmake project (CMAKE_* vs PROJECT_* variables) 2. Do not generate header files within source – bad practice, use build directory for that(e.g. change location where dlt_version.h is being generated) 3. Use add_compile_options() instead of *_C/CXX_FLAGS variables for proper compile environment definition, also bad practice, also see p.2 4. Add WITH_DLT_PKGCONFIG – add generate pkgconfig .pc files as switchable option, should probably be part of headers install routine. Signed-off-by: Radoslaw Kaczorowski <external.radoslaw.kaczorowski@bosch-softtec.com>
* libdlt: Use posix nanosleep (#144)Phong Tran2019-06-271-2/+9
| | | | | Change to use nanosleep instead of usleep. Signed-off-by: Phong Tran <tranmanphong@gmail.com>
* fix the warning of strncat sizePhong Tran2019-06-241-4/+4
| | | | | | | | | | | | | clang warns that warning: size argument in 'strncat' call appears to be size of the source [-Wstrncat-size] strncat(log_file_name, file_index, sizeof(file_index)); ^~~~~~~~~~~~~~~~~~ do as the https://github.com/llvm-mirror/clang/blob/05be53c9524408516651d5678d55d0d4a5d3a894/test/Sema/warn-strncat-size.c#L30 Signed-off-by: Phong Tran <tranmanphong@gmail.com>
* fix warning of self assignPhong Tran2019-06-244-7/+7
| | | | | | | | | | use (void)xyz instead of self assign error log: error: explicitly assigning value of variable of type 'void *' to itself [-Werror,-Wself-assign] Signed-off-by: Phong Tran <tranmanphong@gmail.com>
* dlt-convert: fix warning of wrong conversionPhong Tran2019-06-241-1/+4
| | | | | | | | | | | change to use usleep dlt-daemon/src/console/dlt-convert.c:346:35: warning: implicit conversion from 'double' to 'unsigned int' changes value from 0.1 to 0 [-Wliteral-conversion] sleep(0.1); Signed-off-by: Phong Tran <tranmanphong@gmail.com>
* cleanup: Use dlt_vlog()Saya Sugiura2019-06-1911-371/+156
| | | | | | | There were a couple of places which used snprintf-dlt_log. It is now replaced with dlt_vlog(). Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* Fix alerts from lgtmSaya Sugiura2019-06-1911-58/+56
| | | | Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* dlt-test: Improve context IDBui Nguyen Quoc Thanh2019-06-181-14/+37
| | | | | | | | | New option for binary dlt-test-multi-process. The format of context id is constructed based on appId. Previously, context id is generated randomly. Now test binary can support below testcase: - Multiple apps can share the same context id. Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* dlt-test: Add optionsBui Nguyen Quoc Thanh2019-06-181-2/+45
| | | | | | | Support two options for dlt-test-filestransfer to specify the absolute path to tested files. Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* libdlt: Remove commented out codeSaya Sugiura2019-06-181-33/+0
| | | | Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* Remove dlt_forward_msgSaya Sugiura2019-06-181-106/+0
| | | | | | Since dlt_forward_msg() is not used anywhere, we will remove it. Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* libdlt: compare dlt_ll_ts to NULLSaya Sugiura2019-06-181-4/+4
| | | | | | This commit fixes dlt_user.dlt_ll_ts to compare to NULL instead of 0. Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* network trace: Define package ID macroSaya Sugiura2019-06-182-12/+12
| | | | Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* daemon: Loop for client fdsVo Trung Chi2019-06-183-19/+21
| | | | | | | | | | | | In dlt_daemon_client_send_all_multiple(), while in the loop, the connection to client may be destroyed by recursive call to dlt_daemon_close_socket(). So in some scenario we still use the removed connection, which is unexpected behavior. Solution: loop on the fds array and find the client connection corresponds to. Signed-off-by: Vo Trung Chi <Chi.VoTrung@vn.bosch.com>
* daemon: Remove bytes_sentSaya Sugiura2019-06-185-42/+6
| | | | | | | | | | | | | | | | | | | | | When it fails to send a log message to connected client, daemon tries to store the remaining partial message to internal ring buffer and send again later. When calculating the number of bytes which were sent to client, it had a bug which it keeps on incrementing instead of initializing the variable on every message, which never reached to the condition mentioned above and had a possibility to overflow and access invalid memory. On the other hand, daemon doesn't need to store the unsent partial message, as the socket to the client will be closed on failure and the sent partial message will be dropped anyways. This commit removes the lines where the daemon tries to store the partial message to ring buffer. With this, variable bytes_sent is now removed. Related commit: 2262f8b Made socket send reliable Signed-off-by: Saya Sugiura <ssugiura@jp.adit-jv.com>
* daemon: Don't remove unregistered contextBui Nguyen Quoc Thanh2019-06-183-1/+15
| | | | | | | | If a context is defined and loaded from runtime context config file, that context won't be deleted/removed from dlt-daemon database until its parent application is unregistered. Signed-off-by: Bui Nguyen Quoc Thanh <thanh.buinguyenquoc@vn.bosch.com>
* daemon: Don't assign fd after freeBui Nguyen Quoc Thanh2019-06-181-3/+0
| | | | | | Do not assign fd after destroying receiver pointer Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* test: Add manual interruption in dlt-test-stressBui Nguyen Quoc Thanh2019-06-181-7/+21
| | | | | | | - Add an environment variable to handle interruption of test. - By default, test1 won't wait for manual interruption anymore. Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>
* Logstorage: Correct behavior in sync message cacheBui Nguyen Quoc Thanh2019-06-181-11/+28
| | | | | | | | If the message size is equal to remaining size of cache, it is still written into cache. And then whole cache data must be synchronized to file according to strategy. Signed-off-by: Bui Nguyen Quoc Thanh <Thanh.BuiNguyenQuoc@vn.bosch.com>