platform/core/system/dlog.git
4 years agoIncrease log source scanning frequency from 1s to 10ms 94/221994/1 accepted/tizen/5.5/unified/20200109.114931 submit/tizen_5.5/20200109.021019
Karol Lewandowski [Wed, 8 Jan 2020 15:13:34 +0000 (16:13 +0100)]
Increase log source scanning frequency from 1s to 10ms

This is workaround.  This commit ensures logs source is checked every 10ms.

In current design logs from source devices (/dev/log_) are checked
only periodically on fixed intervals (unlike other sources, which
are driven by epoll()).  The "special" android source handling seems
to be microoptimisation, done due to not entirely correct architecture
decisions.

Proper solution require adding android source devices to epoll.

Change-Id: I91e01f988566c1766385d0c94c6d9dc82bd8e08b
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
(cherry picked from commit b98095cc7007b14b22f2e91e0e18066efbf63ec3)

4 years agoRevert "libdlog doesn't modify errno from outside PoV" 50/218850/1
Hyotaek Shim [Fri, 29 Nov 2019 01:48:58 +0000 (01:48 +0000)]
Revert "libdlog doesn't modify errno from outside PoV"

This reverts commit 6afdbf69c184f8b1b466af16d65272ad9e7f757a.

Change-Id: Ie046f84788b84f748211df374d8d601db1280810
(cherry picked from commit c1bfe2b28c85594c5180c83f2fed0c1e9b116570)

4 years ago[logcleanup] Fix svace/coverity issue 44/218644/1 accepted/tizen/5.5/unified/20191203.011342 submit/tizen_5.5/20191126.094437
Yunmi Ha [Tue, 26 Nov 2019 02:39:13 +0000 (11:39 +0900)]
[logcleanup] Fix svace/coverity issue

- check return value

Change-Id: Ie861d6972c3bfa2c8346f8a25e72e0039e344e6e
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
(cherry picked from commit 5c9a295667aeefe3b6798a55e37c78f45e8f4bac)

4 years agoAdd dlog_cleanup service 23/218423/1
Yunmi Ha [Tue, 19 Nov 2019 07:30:37 +0000 (16:30 +0900)]
Add dlog_cleanup service

- dlog_cleanup service will delete old dlog files.
- dlog_cleanup service will be started by activationd.

Change-Id: I3f197f98edcaa03b6f418dbefdb6f4ced714cb91
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
(cherry picked from commit 054cb817e5a17f6de767fff4824419c5961385ab)

4 years agoBump version to 5.5.2 17/218017/2
Michal Bloch [Mon, 18 Nov 2019 18:45:59 +0000 (19:45 +0100)]
Bump version to 5.5.2

Change-Id: I5436d998fb2c4a1f3024459c949a3ab308576422
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
4 years agolibdlog doesn't modify errno from outside PoV 36/218136/1
Michal Bloch [Tue, 19 Nov 2019 10:22:22 +0000 (11:22 +0100)]
libdlog doesn't modify errno from outside PoV

Change-Id: If5b0fabec233d805041fa534933828cc72bf87cf
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
(cherry picked from commit 6afdbf69c184f8b1b466af16d65272ad9e7f757a)

4 years agoMerge remote-tracking branch 'origin/tizen' into tizen_5.5 73/217973/1 accepted/tizen/5.5/unified/20191119.083924 submit/tizen_5.5/20191118.063031
Hyotaek Shim [Mon, 18 Nov 2019 06:25:32 +0000 (15:25 +0900)]
Merge remote-tracking branch 'origin/tizen' into tizen_5.5

Change-Id: I61629726beea22845c40fc757750b72a0abc5d17
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
5 years agoDocument the behaviour of CAP_SYSLOG 24/217224/4 accepted/tizen/unified/20191118.122958 submit/tizen/20191115.041146
Michal Bloch [Thu, 7 Nov 2019 20:14:43 +0000 (21:14 +0100)]
Document the behaviour of CAP_SYSLOG

Change-Id: I3fe9d45220883b17141203539928059f57847bc1
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoOptimize terminal detection 73/217573/2
Mateusz Majewski [Fri, 8 Nov 2019 09:32:10 +0000 (10:32 +0100)]
Optimize terminal detection

dlogutil needs to check if it's printing to the terminal or not in order
to see if it needs to apply colors or not in the automatic color mode.
Previously, we checked this repeatedly on every log we printed. However,
whether we are printing to the terminal or not shouldn't change at all.
Therefore, we should only check this once, during setup, and then never
call isatty() again. This commit achieves that.

Change-Id: I2084a4efbfeab057f33028a4b298a929aa3d5851

5 years agoFix missing logs when a dlogutil pipe gets clogged 15/217215/3
Michal Bloch [Thu, 7 Nov 2019 12:24:09 +0000 (13:24 +0100)]
Fix missing logs when a dlogutil pipe gets clogged

Change-Id: I44e5c53401abc03605fdc9a0c15e5611742d31a1
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoUpdate the version to 6.0 in autoconf as well 11/217211/1
Michal Bloch [Thu, 7 Nov 2019 11:15:51 +0000 (12:15 +0100)]
Update the version to 6.0 in autoconf as well

Change-Id: Ic1bbc298d6922f182e6f2b9ad22f23f166ae43a0
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoRename SORT_* to DLOGUTIL_SORT_* 97/217197/3
Mateusz Majewski [Wed, 6 Nov 2019 16:17:57 +0000 (17:17 +0100)]
Rename SORT_* to DLOGUTIL_SORT_*

Change-Id: I5ddf6b95b4abf24dfaecd464b94015c7bdeb51f5

5 years agoFix a SVACE complaint 87/216687/5
Mateusz Majewski [Wed, 30 Oct 2019 16:01:00 +0000 (17:01 +0100)]
Fix a SVACE complaint

The complaint is that the function should be checked for NULL before
dereferencing. This is wrong, since we build the struct and so we can
be sure that it is indeed correctly built. However, it's simpler to just
do the check so that SVACE doesn't complain.

Change-Id: I4664170c25b2a7feeb4b25fafb6ebb9741016f5e

5 years agoRename log_add_filter_string to dlogutil_filter_options_filterspec 84/216684/4
Mateusz Majewski [Wed, 30 Oct 2019 14:48:41 +0000 (15:48 +0100)]
Rename log_add_filter_string to dlogutil_filter_options_filterspec

Change-Id: I15b5b5aa930e36fb040d198d63d994cf2c57afa5

5 years agoRename log_add_filter_pid to dlogutil_filter_options_pid 83/216683/4
Mateusz Majewski [Wed, 30 Oct 2019 14:44:11 +0000 (15:44 +0100)]
Rename log_add_filter_pid to dlogutil_filter_options_pid

Change-Id: I5ed69dddb731f57d1f545110b306351f8ae379e0

5 years agoRename log_add_filter_tid to dlogutil_filter_options_tid 82/216682/4
Mateusz Majewski [Wed, 30 Oct 2019 14:41:00 +0000 (15:41 +0100)]
Rename log_add_filter_tid to dlogutil_filter_options_tid

Change-Id: Idaee63aacd2fc8cf62048a9792b5ce38d052958c

5 years agoRename log_buffer_get_message to dlogutil_entry_msg 80/216680/4
Mateusz Majewski [Wed, 30 Oct 2019 14:34:06 +0000 (15:34 +0100)]
Rename log_buffer_get_message to dlogutil_entry_msg

Change-Id: I95984f9affaf6ab8ebb6616a458933c0a0322f48

5 years agoRename log_buffer_get_tag to dlogutil_entry_tag 79/216679/4
Mateusz Majewski [Wed, 30 Oct 2019 14:30:11 +0000 (15:30 +0100)]
Rename log_buffer_get_tag to dlogutil_entry_tag

Change-Id: I2b98af866377c176415e2113df3fc36dae21d893

5 years agoRename log_filter to dlogutil_filter_options 81/216681/4
Mateusz Majewski [Fri, 25 Oct 2019 07:30:34 +0000 (09:30 +0200)]
Rename log_filter to dlogutil_filter_options

This also changes the namespace, as log_filter used to be a typedef, but
dlogutil_filter_options is just a normal struct.

Change-Id: I7a0aed07fd8ec0318e07269307c65d09d66e65fe

5 years agoSlightly improve log_filter_add_* 59/216459/3
Mateusz Majewski [Fri, 25 Oct 2019 06:24:16 +0000 (08:24 +0200)]
Slightly improve log_filter_add_*

Change-Id: I296b6a6317bc5829fb88ca69aa6844bbafc5b6c0

5 years agoRefactor extract_timestamp and rename to dlogutil_entry_ts 58/216458/3
Mateusz Majewski [Thu, 24 Oct 2019 10:11:36 +0000 (12:11 +0200)]
Refactor extract_timestamp and rename to dlogutil_entry_ts

Change-Id: I0c6ee97ad3a39fe66a8cf64e4957a80d52b4b17e

5 years agoAdd __dlog_sec_print() to keep backward compatibility with existing MCD in-house... 45/217045/1 accepted/tizen/5.5/unified/20191107.051304 submit/tizen_5.5/20191106.015838
Hyotaek Shim [Tue, 5 Nov 2019 09:47:21 +0000 (18:47 +0900)]
Add __dlog_sec_print() to keep backward compatibility with existing MCD in-house Apps

.#define SECURE_LOG_(id, prio, tag, fmt, arg...) \
({ do { \
      __dlog_sec_print(id, prio, tag, "%s: %s(%d) > [SECURE_LOG] " fmt, __MODULE__, __func__, __LINE__, ##arg); \
} while (0); })

root@localhost:/usr/apps/com.samsung.w-manager-service/bin# ./w-manager-service
appcore: Failed to get application ID - pid(3962)
./w-manager-service: symbol lookup error: ./w-manager-service: undefined symbol: __dlog_sec_print

root@HyotaekShim:/platform/AppStoreWhitelist/20191106# grep -r __dlog_sec_print
000001044261_com.samsung.w-dialer2_100015.txt:__dlog_sec_print
000004264895_com.samsung.tizen.bixby-voice_210200007.txt:__dlog_sec_print
000001913406_com.samsung.w-spotify_300002.txt:__dlog_sec_print
000001902170_com.samsung.w-spotify_300001.txt:__dlog_sec_print
000002736570_com.samsung.w-manager-service_500300013.txt:__dlog_sec_print
000002420102_com.samsung.samsung-pay-app_100400303.txt:__dlog_sec_print
000001915993_com.samsung.w-spotify_300002.txt:__dlog_sec_print
000002750274_com.samsung.w-logs2_100300011.txt:__dlog_sec_print
000002738273_com.samsung.w-contacts2_100200074.txt:__dlog_sec_print
...

Change-Id: Ieda4e759213ab50810540574d98f72bb0491c6c9
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
(cherry picked from commit e79a3426c5ef1a69bf24cb20d3df2a6d8d6174ad)
(cherry picked from commit 6ca4f6a8f0a054e9770f3a2c43705475483158f0)

5 years agoAdd __dlog_sec_print() to keep backward compatibility with existing MCD in-house... 03/217003/5 accepted/tizen/unified/20191107.051421 submit/tizen/20191106.015848
Hyotaek Shim [Tue, 5 Nov 2019 09:47:21 +0000 (18:47 +0900)]
Add __dlog_sec_print() to keep backward compatibility with existing MCD in-house Apps

.#define SECURE_LOG_(id, prio, tag, fmt, arg...) \
({ do { \
      __dlog_sec_print(id, prio, tag, "%s: %s(%d) > [SECURE_LOG] " fmt, __MODULE__, __func__, __LINE__, ##arg); \
} while (0); })

root@localhost:/usr/apps/com.samsung.w-manager-service/bin# ./w-manager-service
appcore: Failed to get application ID - pid(3962)
./w-manager-service: symbol lookup error: ./w-manager-service: undefined symbol: __dlog_sec_print

root@HyotaekShim:/platform/AppStoreWhitelist/20191106# grep -r __dlog_sec_print
000001044261_com.samsung.w-dialer2_100015.txt:__dlog_sec_print
000004264895_com.samsung.tizen.bixby-voice_210200007.txt:__dlog_sec_print
000001913406_com.samsung.w-spotify_300002.txt:__dlog_sec_print
000001902170_com.samsung.w-spotify_300001.txt:__dlog_sec_print
000002736570_com.samsung.w-manager-service_500300013.txt:__dlog_sec_print
000002420102_com.samsung.samsung-pay-app_100400303.txt:__dlog_sec_print
000001915993_com.samsung.w-spotify_300002.txt:__dlog_sec_print
000002750274_com.samsung.w-logs2_100300011.txt:__dlog_sec_print
000002738273_com.samsung.w-contacts2_100200074.txt:__dlog_sec_print
...

Change-Id: Ieda4e759213ab50810540574d98f72bb0491c6c9
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
5 years agoBump version to 6.0.1 29/217029/1 submit/tizen/20191105.163340
Michal Bloch [Tue, 5 Nov 2019 12:21:06 +0000 (13:21 +0100)]
Bump version to 6.0.1

Tizen 5.5 just had a release and forked off.

Change-Id: I452d9ccb456b7a5a28ee00ef1e56987f79b8ccbe
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoImprove log_buffer_get_* exceptional conditions 98/216398/1
Mateusz Majewski [Thu, 24 Oct 2019 09:05:10 +0000 (11:05 +0200)]
Improve log_buffer_get_* exceptional conditions

We now handle the case in which the struct lacks the ending '\0'.
This would mean that one could read past the end of the struct while
using the result.

Change-Id: Ie70ffd57181dd351ab94db27550b8f967235648f

5 years agoAdd some missing consts 97/216397/1
Mateusz Majewski [Thu, 24 Oct 2019 08:51:22 +0000 (10:51 +0200)]
Add some missing consts

Change-Id: I22c50dea669bb940dc25871dc47d5ed8afaede6f

5 years agoRename DUMP_{CONTINUOUS,INFINITE} 24/216124/2
Mateusz Majewski [Mon, 21 Oct 2019 06:18:51 +0000 (08:18 +0200)]
Rename DUMP_{CONTINUOUS,INFINITE}

Change-Id: Ibc5746ba2bd82b115f8a41cc6378e301cd47c80b

5 years agoAdd a basic design overview document 96/215496/4
Michal Bloch [Wed, 9 Oct 2019 15:16:25 +0000 (17:16 +0200)]
Add a basic design overview document

Change-Id: Ic70b6025143ca00cd7c7441e254a242defe2feef
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoAdd dlogutil_ prefix to logger_entry 26/215626/2
Mateusz Majewski [Fri, 11 Oct 2019 16:26:26 +0000 (18:26 +0200)]
Add dlogutil_ prefix to logger_entry

Change-Id: Ic5caa8139956f1dfff3dc5296a0a67e763a567ae

5 years agoAdd dlogutil_ prefix to write_callback 25/215625/1
Mateusz Majewski [Fri, 11 Oct 2019 16:12:16 +0000 (18:12 +0200)]
Add dlogutil_ prefix to write_callback

Change-Id: I2d1778741a66f1aee13d74e61208c489788009bb

5 years agoAdd dlogutil_ prefix to sorting_order 24/215624/1
Mateusz Majewski [Fri, 11 Oct 2019 16:04:28 +0000 (18:04 +0200)]
Add dlogutil_ prefix to sorting_order

Change-Id: I069c761ff6c6c390d994ac843efbf7d6cc24a6d9

5 years agoMove all pipe backend filtering server-side 09/215109/5
Mateusz Majewski [Tue, 1 Oct 2019 06:43:31 +0000 (08:43 +0200)]
Move all pipe backend filtering server-side

Previously, we used to carry around two filter settings objects in
dlogutil: a filter list, which contained a simple text list of all
filterspecs, and a filter object, which contained info about all other
filters set. The logger backend merged those two together and used
them to filter everything locally, while the pipe backend sent the
filter list to the server and filtered locally on filter object. This
patch does away with the filter list, so that everything is in the
filter object, and enables client to send the filter object. In
particular, this means that the server is able to filter by TID and PID
now.

Change-Id: Ic962da04a5657527f2f80fe20e35caa75d7e2782

5 years agoFix FilterInfo to use pid_t for tid 41/215341/1
Mateusz Majewski [Mon, 7 Oct 2019 06:34:17 +0000 (08:34 +0200)]
Fix FilterInfo to use pid_t for tid

Change-Id: If22062d76d02f62baad5fff5e756adbba56d0caf

5 years agoRefactor filter list a bit 70/214870/1
Mateusz Majewski [Thu, 26 Sep 2019 12:49:25 +0000 (14:49 +0200)]
Refactor filter list a bit

Change-Id: Ic69af18d2b91608708227c3c8c86d1f8dda842d1

5 years agoFix issues found by static analysis. 21/214521/5 accepted/tizen_5.5_unified_mobile_hotfix tizen_5.5_mobile_hotfix accepted/tizen/5.5/unified/20191031.021742 accepted/tizen/5.5/unified/mobile/hotfix/20201027.085839 accepted/tizen/unified/20190927.013321 submit/tizen/20190926.122500 submit/tizen_5.5/20191031.000004 submit/tizen_5.5_mobile_hotfix/20201026.185104 tizen_5.5.m2_release
Michal Bloch [Mon, 23 Sep 2019 15:49:26 +0000 (17:49 +0200)]
Fix issues found by static analysis.

Change-Id: I4d1e87a5e3b8091f5503d105a41764358e5b6840
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoReplace strerror with %m 25/214725/4
Michal Bloch [Wed, 25 Sep 2019 14:36:57 +0000 (16:36 +0200)]
Replace strerror with %m

Change-Id: I071303c25389b958fd4d9ad5c3e74af97c92fe09
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoFix coverity issue 47/214547/4
Yunmi Ha [Wed, 25 Sep 2019 14:38:46 +0000 (16:38 +0200)]
Fix coverity issue

- resolve "Uninitialized pointer read"

Change-Id: If160a36be2cd77ed7dadc8056b234098470a52a4
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoChange size and dumping count types into size_t 95/214595/4
Mateusz Majewski [Tue, 24 Sep 2019 06:13:18 +0000 (08:13 +0200)]
Change size and dumping count types into size_t

This also requires changing a magic value triggering the infinite dump
mode from -1 into SIZE_MAX.

Change-Id: Ib033921ca72001de2570bf740383a8471e9cae35

5 years agoDon't output errors in dlogutil outside of logutil.c 65/214365/2
Mateusz Majewski [Fri, 20 Sep 2019 12:07:50 +0000 (14:07 +0200)]
Don't output errors in dlogutil outside of logutil.c

This is useful, beacuse those functions will probably end up being used
in libdlogutil, and writing to stderr in a library seems like a bad
idea.

Change-Id: Ic07ed3548bf901ea4878d4a54a3824a0760a9b88

5 years agoAdd meaningful error codes 64/214364/2
Mateusz Majewski [Fri, 20 Sep 2019 12:28:59 +0000 (14:28 +0200)]
Add meaningful error codes

Change-Id: Ic633e51ba49e8e9261ce4e9f33efec8a66f6079a

5 years agoFill the seconds field of invalid timestamps 68/214268/4
Mateusz Majewski [Thu, 19 Sep 2019 10:53:08 +0000 (12:53 +0200)]
Fill the seconds field of invalid timestamps

We used to fill only nsec with -1. However, this means that the sec
field is kept uninitialized. This means that reading it would be
undefined behavior, which is bad. This doesn't seem to happen in
dlogutil as is, but it would be possible when choosing a timestamp to sort
on is be implemented.

Also, a slight change to sort vector is done so that it works well in
such situation.

Change-Id: I501adad093c0782433d014395e8cc752f7d48574

5 years agoPropagate callback return value 58/214158/2
Mateusz Majewski [Wed, 18 Sep 2019 08:44:55 +0000 (10:44 +0200)]
Propagate callback return value

This will be especially useful in libdlogutil, where it will enable the
user of the library to return a nonzero value from the callback in order
to stop log processing.

Change-Id: I0565be6f8af2c7804a129250075778ec3f2b2e7c

5 years agoFix an include 95/213995/1
Mateusz Majewski [Tue, 17 Sep 2019 06:21:52 +0000 (08:21 +0200)]
Fix an include

Change-Id: I5368742a9054956d5b8506b92b47551a43b0cbb6

5 years agoFix an off-by-one inconsistency in the "out of order" message 99/213799/1
Mateusz Majewski [Wed, 11 Sep 2019 11:59:59 +0000 (13:59 +0200)]
Fix an off-by-one inconsistency in the "out of order" message

The len field of the logger_entry should contain the byte size of the
msg field. However, in this case, the final null byte is not counted.
This is not really a bug since we should handle this case, but
nevertheless an inconsistency with the rest of the dlogutil.

Change-Id: Icf2277abc8dd7f8cd1885fc53dd49c9bdede623d

5 years agoRemove unnecessary newlines at the end of the files 79/213679/1 accepted/tizen/unified/20190916.111626 submit/tizen/20190910.115310
Mateusz Majewski [Tue, 10 Sep 2019 05:56:36 +0000 (07:56 +0200)]
Remove unnecessary newlines at the end of the files

Change-Id: I5ad464bb853b3209f9a87ac899c3be677c1a8942

5 years agoCreate and fill logretrieve.{c,h} 47/213647/1
Mateusz Majewski [Thu, 22 Aug 2019 09:41:48 +0000 (11:41 +0200)]
Create and fill logretrieve.{c,h}

Change-Id: I4f0402cb2d8ff38e1b371b63600dd79e1aa467b3

5 years agoMove pipe/logger backend choice logic to create_initial_fdis 46/213646/1
Mateusz Majewski [Mon, 9 Sep 2019 09:39:39 +0000 (11:39 +0200)]
Move pipe/logger backend choice logic to create_initial_fdis

Change-Id: I3221f256d96e014200875a87467ed4b3eab5cd79

5 years agoMove flush_logs into sort_vector.c 45/213645/1
Mateusz Majewski [Thu, 22 Aug 2019 09:15:45 +0000 (11:15 +0200)]
Move flush_logs into sort_vector.c

It's now called sort_vector_flush.

Change-Id: I9a90166e81bb129df7529c92626fa80c7ae84f10

5 years agoMove buffer choice validation into create_initial_fdis 34/213534/7
Mateusz Majewski [Fri, 6 Sep 2019 08:59:02 +0000 (10:59 +0200)]
Move buffer choice validation into create_initial_fdis

Change-Id: I3328790d7ef438aaa7dd99a22b12c3243145c292

5 years agoMove sort_vector initialization into do_print 33/213533/7
Mateusz Majewski [Fri, 6 Sep 2019 07:23:16 +0000 (09:23 +0200)]
Move sort_vector initialization into do_print

This way, main doesn't have to care about the sort_vector at all.

Change-Id: Iaf9f80957f1df40f1113f0cdd7428aef782d3baf

5 years agoAdd some missing const qualifiers 09/213609/1
Mateusz Majewski [Mon, 9 Sep 2019 06:18:10 +0000 (08:18 +0200)]
Add some missing const qualifiers

Change-Id: I521e570921a07b93c7fbdd6cef0abcb1f2409fba

5 years agoSet some sort_vector fields indirectly 32/213532/5
Mateusz Majewski [Fri, 23 Aug 2019 09:34:42 +0000 (11:34 +0200)]
Set some sort_vector fields indirectly

This way, we don't need to pass the sort_vector to the parse_options
function.

Change-Id: Iffe9436e847846b4dc4d1c39123ada87526a0db5

5 years agoMove some arguments into a common struct 51/213551/2
Mateusz Majewski [Fri, 6 Sep 2019 11:50:51 +0000 (13:50 +0200)]
Move some arguments into a common struct

Change-Id: Iacb5461d42688128c52842e20c8d32317b3cd60a

5 years agoFix log_filter_free 53/213553/1
Mateusz Majewski [Fri, 6 Sep 2019 13:12:16 +0000 (15:12 +0200)]
Fix log_filter_free

Change-Id: I3a23f7a2303d4659aacd2fbd9e88a5a4bf046893

5 years agoFix some minor issues with the last refactor 13/213513/2
Mateusz Majewski [Fri, 6 Sep 2019 05:56:56 +0000 (07:56 +0200)]
Fix some minor issues with the last refactor

Change-Id: I1883acd871bbb09d55c14f1d766499be4b0a05af

5 years agoRefactor set_sorting 69/213469/1
Mateusz Majewski [Mon, 26 Aug 2019 09:58:58 +0000 (11:58 +0200)]
Refactor set_sorting

This will allow us to reuse the same code in libdlogutil in a clean way.

Change-Id: I97b44d639ce4da91e83a2243919318ba0f81f96d

5 years agoMove sort_vector_time_span into sort_vector.c 68/213468/1
Mateusz Majewski [Wed, 21 Aug 2019 10:51:59 +0000 (12:51 +0200)]
Move sort_vector_time_span into sort_vector.c

Change-Id: I4a948c731e41b16909f14576adeba86001526e64

5 years agoMove print preparation into do_print 15/213315/5
Mateusz Majewski [Tue, 27 Aug 2019 13:25:43 +0000 (15:25 +0200)]
Move print preparation into do_print

Motivation for this is two-fold. First, it will allow us to reuse it in
the libdlogutil in the future. Second, it allows us to merge the two
loops that appear there (especially since do_print already did some
additional preparation on the FDIs).

Change-Id: Icd026476f3f453ccaca69ed992b32611f07c3a0a

5 years agoFix process_log docs 36/213336/2
Mateusz Majewski [Wed, 21 Aug 2019 12:39:02 +0000 (14:39 +0200)]
Fix process_log docs

Oops! I actually had this done, but I did it in a separate commit and
forgotten to actually apply this change :(

Change-Id: I41cdbacb73bb4315e3a3ca904b4efbe4cb1aaaef

5 years agoMove various files from dlogutil into shared locations 76/213276/1
Mateusz Majewski [Wed, 14 Aug 2019 06:26:25 +0000 (08:26 +0200)]
Move various files from dlogutil into shared locations

This is due to the need to use them in the upcoming libdlogutil.

Change-Id: I7048116972dbef9e345b333a91f92c2067188c5a

5 years agoPass the printing function in dlogutil by a callback 71/213271/2
Mateusz Majewski [Wed, 14 Aug 2019 06:26:25 +0000 (08:26 +0200)]
Pass the printing function in dlogutil by a callback

Currently it doesn't matter, however, this will come in handy when
implementing libdlogutil, since it will allow to reuse the code, but
do an arbitrary operation.

Change-Id: Ie7b907ef9409af53ec8d8aa8893c6ba6a5f57c02

5 years agoAdd tests for some recently changed code 72/213272/1
Michal Bloch [Tue, 3 Sep 2019 11:15:50 +0000 (13:15 +0200)]
Add tests for some recently changed code

Change-Id: Ic89168dc09aa50fd80e10124e588cade9d2ae8f0
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoFix tests for future timestamps 51/213251/1 accepted/tizen/unified/20190904.011545 submit/tizen/20190903.085817
Maciej Slodczyk [Tue, 3 Sep 2019 08:45:31 +0000 (10:45 +0200)]
Fix tests for future timestamps

Change-Id: I15b3242b10d643ade27f33fd8fb65710148afd68
Signed-off-by: Maciej Slodczyk <m.slodczyk2@partner.samsung.com>
5 years agoFix future timestamps 98/213198/5 submit/tizen/20190903.011610
Michal Bloch [Mon, 2 Sep 2019 15:05:22 +0000 (17:05 +0200)]
Fix future timestamps

Change-Id: I65e9389733d0d6718d9bf5523b9d65d52d4265d1
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoFix a potential null ptr dereference 30/213130/2
Michal Bloch [Fri, 30 Aug 2019 12:03:47 +0000 (14:03 +0200)]
Fix a potential null ptr dereference

Change-Id: I5541047d606dea988b5ce5b54cb7394a3aba78ac
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoRemove destructor and destruction_lock 22/213122/2 accepted/tizen/unified/20190902.220738 submit/tizen/20190902.035940
Hyotaek Shim [Fri, 30 Aug 2019 10:29:29 +0000 (19:29 +0900)]
Remove destructor and destruction_lock

Change-Id: Id68323d0b8981b8cbfff53a847ced8a0b1569fb4
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
5 years agoFix dlogutil getting blocked by clock changes 23/213123/1 accepted/tizen/unified/20190901.225940 submit/tizen/20190830.104642
Michal Bloch [Fri, 30 Aug 2019 10:11:22 +0000 (12:11 +0200)]
Fix dlogutil getting blocked by clock changes

Change-Id: Iece15b17e78824c310d94b9f3d0228017af3f019
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agolibdlog: handle thread cancellation 47/213047/1 accepted/tizen/unified/20190830.110653 submit/tizen/20190830.025800
Michal Bloch [Thu, 29 Aug 2019 11:36:54 +0000 (13:36 +0200)]
libdlog: handle thread cancellation

Change-Id: If52fa194ce10aab5e1766ed204c438fa62c03ba3
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoFix svace issue 30/212830/1 accepted/tizen/unified/20190828.011005 submit/tizen/20190827.083548
Yunmi Ha [Tue, 27 Aug 2019 06:27:14 +0000 (15:27 +0900)]
Fix svace issue

Change-Id: Ia2d8b4a8253dd0c771456ea2579fe3c17b4c69fd
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
5 years agoMove the get_format_sorting call 86/212586/1
Mateusz Majewski [Fri, 23 Aug 2019 06:38:10 +0000 (08:38 +0200)]
Move the get_format_sorting call

This makes the set_sorting function slightly more general.

Change-Id: Ic77b0fa60bb4007baa90779905e6381e54262078

5 years agoMake sure the JSON format uses default sorting 85/212585/1
Mateusz Majewski [Fri, 23 Aug 2019 06:37:17 +0000 (08:37 +0200)]
Make sure the JSON format uses default sorting

Change-Id: If20ef91a202adf993b923b2f992036c6dcee88ac

5 years agoMerge "Move log filtering out of log writing" into tizen
Michal Bloch [Wed, 21 Aug 2019 13:27:14 +0000 (13:27 +0000)]
Merge "Move log filtering out of log writing" into tizen

5 years agoMerge "Decouple filtering and formatting messages" into tizen
Michal Bloch [Wed, 21 Aug 2019 13:26:52 +0000 (13:26 +0000)]
Merge "Decouple filtering and formatting messages" into tizen

5 years agoAdd some JSON tests 68/212168/3
Mateusz Majewski [Wed, 14 Aug 2019 09:24:08 +0000 (11:24 +0200)]
Add some JSON tests

Note that it still remains to test some of the failure cases.

Change-Id: Ie2222875b7ecafd44400e671d8b5dc51d002c694

5 years agoMove log filtering out of log writing 42/211942/3
Mateusz Majewski [Mon, 12 Aug 2019 08:25:25 +0000 (10:25 +0200)]
Move log filtering out of log writing

This also adds a nice bonus -- now, in dlogutil, the incoming logs
are only filtered once, and in one place.

Change-Id: I443b48967344353b0a92731295d11a369d9de2fb

5 years agoDecouple filtering and formatting messages 07/211407/5
Mateusz Majewski [Thu, 1 Aug 2019 10:58:25 +0000 (12:58 +0200)]
Decouple filtering and formatting messages

The log_filter struct contains both info on which messages to print,
and info on how to print them. If we want to provide a simple API that
allows applications to read log messages, we need to know which messages
to give to them, but there's no printing involved. Therefore, we need to
split the log_filter struct into the two structs, each with a single
responsibility.

To add to this, the filtering data is contained in the log_file struct.
All the other data contained in it is only meaningful when printing.
Therefore, we also need to pull the log_filter struct out of it, as we
probably are not going to use the log_file struct in the future
libdlogutil library.

Change-Id: Ied9e34ece9c7ee34c8249fcd201c167275a27fb3

5 years agoCover a line in logconfig.c 71/212171/2
Mateusz Majewski [Fri, 16 Aug 2019 08:35:04 +0000 (10:35 +0200)]
Cover a line in logconfig.c

Change-Id: I422cbbfdb0a96e173a0a08615e309530fe3cba45

5 years agoFix various typos 72/212172/1
Mateusz Majewski [Fri, 16 Aug 2019 09:19:43 +0000 (11:19 +0200)]
Fix various typos

Change-Id: I0e288eb04c33dfcdb0a1e728cddca1a340c150ba

5 years agoFix logprint time_t handling 26/212126/3
Mateusz Majewski [Wed, 14 Aug 2019 11:33:12 +0000 (13:33 +0200)]
Fix logprint time_t handling

In JSON formatting, I passed to localtime an int variable cast to
time_t. This is UB, as the size of time_t is not defined (in fact,
time_t doesn't even need to be an integer in C). This commit fixes this
by assigning the data to a temporary time_t variable.

Also, such a system was already present when formatting to other
formats, but it featured an unnecessary cast, which this commit removes.

Change-Id: I75d30cf211b9d05c833a798070cf3c0a445956ef

5 years agoFix coverity issues 67/209667/4 accepted/tizen/unified/20190809.035645 submit/tizen/20190808.060025
Yunmi Ha [Wed, 10 Jul 2019 02:48:12 +0000 (11:48 +0900)]
Fix coverity issues

- check return value
- initialize the memory

Change-Id: Iebf46f98466d94991e949687ffb6310a4c1c85d5
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
5 years agoMerge "Fix a potential privilege escalation" into tizen accepted/tizen/unified/20190807.111830 submit/tizen/20180808.030253 submit/tizen/20190807.012805
Karol Lewandowski [Fri, 2 Aug 2019 15:19:25 +0000 (15:19 +0000)]
Merge "Fix a potential privilege escalation" into tizen

5 years agoshared: fix timestamp inconsistencies 32/199532/8 accepted/tizen/unified/20190802.111406 submit/tizen/20190801.043248
Michal Bloch [Tue, 12 Feb 2019 10:50:57 +0000 (11:50 +0100)]
shared: fix timestamp inconsistencies

Change-Id: I123446edceeaa9d0552f30a351fb150aa45125ed

5 years agoFix a potential privilege escalation 74/211074/1
Michal Bloch [Mon, 29 Jul 2019 13:45:56 +0000 (15:45 +0200)]
Fix a potential privilege escalation

Change-Id: I97a4fa568a5a0eb035981803f85addcee833fec4
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
5 years agoAdd the JSON format to dlogutil 78/210478/9
Mateusz Majewski [Wed, 10 Jul 2019 13:11:08 +0000 (15:11 +0200)]
Add the JSON format to dlogutil

Change-Id: I10600b919c73d4279f34721a0a3e0bf7efc425a5

5 years agoAdd marking invalid timestamps 60/210860/2
Mateusz Majewski [Thu, 25 Jul 2019 09:47:21 +0000 (11:47 +0200)]
Add marking invalid timestamps

Some formats don't include both realtime and monotonic timestamps.
Currently, the missing timestamps are set to various values (either
the other timestamp or 0). This commit makes it so the nanosecond value
of missing timestamps is set to a normally impossible value of -1.

Change-Id: I458b9049e9e5b0581ae138a352b66b9821e3fc5a

5 years agoAdd some more tests covering a part of logger.c 75/210975/3
Mateusz Majewski [Fri, 26 Jul 2019 11:09:46 +0000 (13:09 +0200)]
Add some more tests covering a part of logger.c

Change-Id: I0c03265bdc859809b3f7d0187fd9b52c3ec4a256

5 years agoAddress the complaints of SVACE 60/210660/4 accepted/tizen/unified/20190725.042830 submit/tizen/20190724.030536
Mateusz Majewski [Tue, 23 Jul 2019 10:49:49 +0000 (12:49 +0200)]
Address the complaints of SVACE

One of them is even legitimate -- if the test was run in low memory
conditions, it could try to dereference NULL. Thanks, SVACE!

Change-Id: I61e835cc883daf6201d6ecb1a09e633047ad988f

5 years agoReuse writer_close_fd in writer_free 49/210649/2
Mateusz Majewski [Tue, 23 Jul 2019 10:10:49 +0000 (12:10 +0200)]
Reuse writer_close_fd in writer_free

It's still useful to have writer_free, since writer_create puts the new
writer directly on the heap.

Change-Id: Ia9dec7651ff322ab39818ff23e7e6f8540cf1259

5 years agoImprove modify_fd_entity 40/210640/1
Mateusz Majewski [Tue, 23 Jul 2019 08:53:06 +0000 (10:53 +0200)]
Improve modify_fd_entity

In a case in which modify_fd_entity failed, it would still record the
modification as done. This would make it fail silently without calling
epoll_ctl next time it was called, which is at least unintuitive.

Change-Id: I85b427c376e08241d33b2f864c8d16ad53c5cd7a

5 years agoAdd tests covering a minor part of logger.c 67/210467/7
Mateusz Majewski [Fri, 19 Jul 2019 08:34:24 +0000 (10:34 +0200)]
Add tests covering a minor part of logger.c

Covering the entire file will unfortunately be difficult, as this commit
is already big (and pretty ugly), yet it only covers 1/6 of logger.c.

Change-Id: I46825c5c2dfaad00791356b2d3944bb54185819b

5 years agoCover the last line of logprint.c 87/210487/1
Mateusz Majewski [Fri, 19 Jul 2019 13:08:22 +0000 (15:08 +0200)]
Cover the last line of logprint.c

Change-Id: I7014206d3fc8942ba9410a19eef4a3d6b82d8fe5

5 years agoFix a minor FD leak 74/210374/4
Mateusz Majewski [Thu, 18 Jul 2019 12:01:15 +0000 (14:01 +0200)]
Fix a minor FD leak

Not that it matters, since we quit immediately if this happens,
but still.

Change-Id: Id97227e9cf8f377626d61144b1506f524c2a46d5

5 years agoAdd tests covering a part of logutil.c 66/210366/3 accepted/tizen/unified/20190722.074750 submit/tizen/20190719.053029
Mateusz Majewski [Thu, 18 Jul 2019 09:21:01 +0000 (11:21 +0200)]
Add tests covering a part of logutil.c

Sadly, I think that testing the remaining functions will be difficult
(too difficult for me) without refactoring them.

Change-Id: I8a37c3ba4e213f784d6b85356d235298e0cfb5c1

5 years agoAdd colored headers 31/209531/11 submit/tizen/20190718.025247
Mateusz Majewski [Fri, 5 Jul 2019 12:55:23 +0000 (14:55 +0200)]
Add colored headers

Change-Id: I8b83709073604799fa38855f2c5ff2b46533a52a

5 years agoConvert FilterInfo's custom list to the one from ptrs_list 47/209647/3
Mateusz Majewski [Tue, 9 Jul 2019 07:17:52 +0000 (09:17 +0200)]
Convert FilterInfo's custom list to the one from ptrs_list

Change-Id: If2b4373209b16b4b8e50e2a302f3568009e059e3

5 years agoChange config so that we won't try to open /dev/null 87/209587/3 accepted/tizen/unified/20190717.220438 submit/tizen/20190717.061730
Mateusz Majewski [Tue, 16 Jul 2019 07:34:37 +0000 (09:34 +0200)]
Change config so that we won't try to open /dev/null

While this is not the prettiest syntax imaginable (and it might remind
some people of Pascal), it's probably the simplest way to achieve our
goal, since there's no need for any additional code.

Change-Id: Id8258932479fbd8d015193e1ed62ca3f6a62d5fe

5 years agoAdd fdi_pipe.c tests 59/210059/2
Mateusz Majewski [Mon, 15 Jul 2019 09:00:17 +0000 (11:00 +0200)]
Add fdi_pipe.c tests

Also, a little issue in send_logger_request was found; it could send
too many null bytes at the end of the message. This was also fixed.

Change-Id: I410bd91bfc2329768be9397c6d095830ff1d2d00

5 years agoFix reset_self_privledges 73/210073/1
Mateusz Majewski [Mon, 15 Jul 2019 12:43:03 +0000 (14:43 +0200)]
Fix reset_self_privledges

Change-Id: Icad7b11b46e6da1095e7c728ad9d68c83540f771

5 years agoAdd tests for the monotonic timestamps functionality 47/209747/2
Mateusz Majewski [Wed, 10 Jul 2019 06:29:58 +0000 (08:29 +0200)]
Add tests for the monotonic timestamps functionality

Change-Id: I6a4f32d604acba8b6145a0817112a5c998fc2ab1

5 years agoMerge "Add new tests to cover a branch in fdi_push_log" into tizen
Michal Bloch [Fri, 12 Jul 2019 19:37:15 +0000 (19:37 +0000)]
Merge "Add new tests to cover a branch in fdi_push_log" into tizen