sanghyeok.oh [Tue, 28 Feb 2017 09:00:42 +0000 (18:00 +0900)]
patch: bus: Fix timeout restarts
patch from upstream
https://cgit.freedesktop.org/dbus/dbus/commit/?id=
529600397bcab47b9bed5da9208c2df05c8b86b4
author Michal Koutn? <mkoutny@suse.com> 2016-05-24 09:14:11 (GMT)
committer Simon McVittie <smcv@debian.org> 2017-02-01 10:42:50 (GMT)
commit
529600397bcab47b9bed5da9208c2df05c8b86b4 (patch)
tree
17e9af27f973a4e0132ee23e405ed7d52fdb0771
parent
befd186c0b005f1e1130cb3e4923c689085a8dbc (diff)
bus: Fix timeout restarts
The code counting pending fds relied on restart of timeouts when they are
enabled. This patch adds function that ensures that such enabled timeouts
have their timekeeping data reset (and not only when timeout is
registered into event loop processing).
When timeouts weren't reset, they'd fire at rather random and mainly
incorrect moments leading to interruption of connections of dbus-daemon.
Every time we reset the interval, we also need to re-enable the timeout
and mark its end time to be recalculated by the event loop, so combine
the old set_enabled(TRUE) with set_interval() as a new restart() method.
This leaves all the set_enabled() calls having a FALSE parameter, so
remove the parameter and rename the method to disable().
[smcv: fix minor coding style issues]
[smcv: replace set_reenabled()/set_interval() pair with restart()]
[smcv: replace set_enabled(FALSE) with disable()]
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=95619
Change-Id: Ia80641554800ae09ae22d4615b87eda0697c5f3e
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
Hyotaek Shim [Wed, 1 Mar 2017 05:44:33 +0000 (21:44 -0800)]
Merge changes Icf330ba3,I7354c21e into tizen
* changes:
tests: general fix for tests setup
tests: generating coverage version of the library
INSUN PYO [Wed, 22 Feb 2017 02:38:43 +0000 (11:38 +0900)]
make link : /usr/lib/systemd/user/dbus.socket ==> /usr/lib/systemd/user/sockets.target.wants/dbus.socket
Until now, dbus.socket of user session was not running in the sockets.target.
dbus.socket has been triggered by dbus.service's dependencies.
The dbus.service is included in basic.target.
Therefore, there are some dependency issues.
If a service runs before dbus.service, the service can not accesses dbus system.
(Since dbus.socket is not yet activated, so you can not make a dbus connection.)
I have modified dbus.service to be explicitly run in sockets.target.
On the session bus, sockets.target is guaranteed to run before all services.
Signed-off-by: INSUN PYO <insun.pyo@ubuntu1604.playinsun.pe.kr>
Change-Id: Ic46f1a46b458e2017b0025c6e564ac1204eb8cc8
(cherry picked from commit
1beb067e73478b3948980eb19e379a8986dc365a)
Hyotaek Shim [Wed, 22 Feb 2017 00:04:31 +0000 (16:04 -0800)]
Merge "tizen: notify service readyness after successful config file parsing" into tizen
Karol Lewandowski [Fri, 10 Feb 2017 15:16:55 +0000 (16:16 +0100)]
tizen: notify service readyness after successful config file parsing
This commit works around systemd -> dbus -> (nss) -> systemd deadlock
occuring in Tizen.
Situation is depicted on diagram below:
systemd dbus nss
| . .
| . .
1> reads config . .
| . .
2> reg. nofification . .
| for dbus.service . .
| . .
| . .
3> exec. services . .
| | . .
| (start srv...) . .
| | . .
| 4>------------(exec) .
| | .
*-<---(notification)=<| .
\ | .
.\> call dbus.serv | .
. handler | .
. | 4a> read config .
. |> conn. to bus | .
. | 4b> resolve user .
. |> call dbus . and groups .
. \ . initgroups() .
. ------------>. | .
. (blocking) . \---------->select module
. . (blocking) based on conf.
. . |
(below not executed) . |> security-manager
. . | module selected
. . |
. . |
[sec-manager.socket]<---------------------<| call security-manager
. . (DEADLOCK) . on unix socket
. . .
Solid line (|) means active thread of execution, dot (.) means
code not executed (blocked).
The root cause of the problem is that systemd calls external
API in blocking manner, which, due to system configuration, requires
systemd to handle its request for successful completion.
(systemd should start security-manager service via sec-manager.socket
activation).
The exact place this situation is triggered is in dbus' initialization.
This commits works around this problem by delaying dbus.service readyness
notification - effectively - resolving the problem.
Situation becomes:
systemd dbus nss security-manager
| . . .
| . . .
1> reads config . . .
| . . .
2> reg. nofification . . .
| for dbus.service . . .
| . . .
| . . .
3> exec. services . . .
| | . . .
| (start srv...) . . .
| | . . .
| 4>------------(exec) . .
| | . .
| | . .
| | . .
| | . .
| | . .
| 4a> read config . .
| | . .
| 4b> resolve user . .
| . and groups . .
| . initgroups() . .
| . | . .
| . \---------->select module .
| . (blocking) based on conf. .
| . | .
| . |> security-manager .
| . | module selected .
| . | .
| . | .
[sec-manager.socket]<---------------------<| call security-manager .
. | . . on unix socket .
. | . .
. |> exec service ----------------------------------------------->(exec)
. | . . |
<--| . |<-------------------------<| handle call
| . | |
| |<-----------------| |
| | . |
| | . |
.\> call dbus.serv |>finish conf. file. |
. handler | parsing . |
. | | . |
*-<---(notification)-<|> explicitly . |
.\ | | notify startup . |
. \> call dbus.serv | finished . |
| handler | . |
. | | . |
. |> conn. to bus | . |
. | | . |
. |> call dbus | . |
. \ | . |
. ------------>* dispatch loop . |
. (blocking) | . |
. | . |
|<--------------------< handle call . |
| | . |
Change-Id: Ifeaf299fc8653b583cd06ca9fd4f9f8045a2bde0
INSUN PYO [Fri, 17 Feb 2017 02:19:31 +0000 (11:19 +0900)]
Change the method to get DBUS addres when changing user with "su -" command.
The adbd's privilege has been changed form "System::Privileged" to "User::Shell".
So, pgrep does not work with smack errors when accessing /proc.
If it fails to find DBUS address, the fixed address is used.
Signed-off-by: INSUN PYO <insun.pyo@ubuntu1604.playinsun.pe.kr>
Change-Id: I4f9e0bc0939de2ecd7b866df8a2f266b4258338b
(cherry picked from commit
4f11f164f44d78ec6a54892e5d4095ca52e7117d)
Adrian Szyndela [Thu, 16 Feb 2017 11:47:41 +0000 (12:47 +0100)]
tests: general fix for tests setup
Before this patch tests were installed into custom directory
/usr/lib/dbus-tests/test-suites/dbus-tests
Originally, dbus wants its installed tests in
/usr/lib/dbus/installed-tests/dbus
This path seems to be partially hardcoded in the configuration
files - it relies on defined datadir. As datadir is used
also for something else than tests, we don't want to change it.
This commit switches installation directory to the original,
and adds symbolic links in our custom directory.
Change-Id: Icf330ba3b5be59ee941d51b15a8f78a082297846
Adrian Szyndela [Mon, 6 Feb 2017 11:17:24 +0000 (12:17 +0100)]
tests: generating coverage version of the library
Additionally:
- immediate output of test results instead of caching and printing
at the end;
- removed manual-authz test, because it is not meant to be run
automatically.
Change-Id: I7354c21e0fa457ad7e2a4a53e1c898e5039b7f73
Konrad Lipinski [Fri, 3 Feb 2017 12:40:29 +0000 (13:40 +0100)]
gbs incremental build support
Change-Id: Ic1960a3b70df234a3e9ad141d6c335d373c331ec
Adrian Szyndela [Wed, 11 Jan 2017 11:54:07 +0000 (12:54 +0100)]
Merge tizen_3.0 into tizen
This merge commit adds integration tests.
Change-Id: I2b0ecb3c48fec72a6be1a7d6406b5580bbb38ec8
Hyotaek Shim [Wed, 28 Dec 2016 01:53:31 +0000 (10:53 +0900)]
Modify from APACHE-2.0 to Apache-2.0
Change-Id: I2e509fe1a4f275c9f5b35290bdd2d218c4b3692a
(cherry picked from commit
4f9a3114261606c3edf84655b2e5752dee33585f)
Hyotaek Shim [Wed, 28 Dec 2016 01:53:31 +0000 (10:53 +0900)]
Modify from APACHE-2.0 to Apache-2.0
Change-Id: I2e509fe1a4f275c9f5b35290bdd2d218c4b3692a
Hyotaek Shim [Wed, 28 Dec 2016 01:43:22 +0000 (10:43 +0900)]
Add .spec description about LICENSE.APACHE2.0
Change-Id: I127f90398b4fe33b3c3b412ef84a42ab2683efd5
(cherry picked from commit
44c73590bab90e63b21fadfffadbfa1d745d9613)
Hyotaek Shim [Wed, 28 Dec 2016 01:43:22 +0000 (10:43 +0900)]
Add .spec description about LICENSE.APACHE2.0
Change-Id: I127f90398b4fe33b3c3b412ef84a42ab2683efd5
Hyotaek Shim [Wed, 28 Dec 2016 01:39:34 +0000 (10:39 +0900)]
Add LICENSE.APACHE2.0
Change-Id: Icf4a2b514abfeb458305c58ab99aad4cfbab325d
(cherry picked from commit
4b5af3aba73865b45a144694fa9c918ed7f9233e)
Hyotaek Shim [Wed, 28 Dec 2016 01:39:34 +0000 (10:39 +0900)]
Add LICENSE.APACHE2.0
Change-Id: Icf4a2b514abfeb458305c58ab99aad4cfbab325d
Krystian Kisielak [Thu, 13 Oct 2016 13:01:27 +0000 (15:01 +0200)]
Adds package for dbus-integration tests.
Change-Id: I0175a6c710e418be7f3b06f1df6ad13396e40f8c
Signed-off-by: Krystian Kisielak <k.kisielak@samsung.com>
Adrian Szyndela [Fri, 14 Oct 2016 13:24:43 +0000 (15:24 +0200)]
Bugfix, GVariant: missing padding for fixed-size tuples.
There is a requirement for fixed-size tuples:
size of such tuple must be a multiply of its required alignment.
That part was overlooked in the implementation.
This commit adds padding accounting for both reading and writing.
Change-Id: I0825be6436b93b836dc333f5a395fdf1021f2a06
Adrian Szyndela [Thu, 13 Oct 2016 13:04:10 +0000 (15:04 +0200)]
Bugfix, GVariant: no padding in root-level tuples
Change-Id: If84df57e9985f484e3c3c63854df5ff666cc1794
sanghyeok.oh [Mon, 26 Sep 2016 06:24:35 +0000 (15:24 +0900)]
change socket in/out label
Change-Id: Ifcc7dacb077615c8f5392a6b213d402d4775af05
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
Adrian Szyndela [Tue, 13 Sep 2016 07:59:34 +0000 (09:59 +0200)]
bugfix: sec_label was copied without ending byte
Change-Id: I3d9aa7f2d608e6706600a87ad5dc570033244f98
Lukasz Skalski [Mon, 5 Sep 2016 09:35:38 +0000 (11:35 +0200)]
kdbus: fix for GetConnectionSELinuxSecurityContext method call
To keep compatibility with dbus1, GetConnectionSELinuxSecurityContext
method call should always return SELinuxSecurityContextUnknown error
on systems without SELinux (even if other LSM systems, like for example
SMACK, are available on platform).
Change-Id: I347cdf665a03fc047d267752b23c4503bf5218e3
Hyotaek Shim [Thu, 1 Sep 2016 03:38:20 +0000 (20:38 -0700)]
Merge "calculate kdbus timeout based on user timeout" into tizen
Konrad Lipinski [Thu, 25 Aug 2016 09:07:26 +0000 (11:07 +0200)]
calculate kdbus timeout based on user timeout
Change-Id: I9fd1720e5c2a1edaa1fcd66b78df0b0238e9ce9f
sanghyeok.oh [Wed, 31 Aug 2016 08:35:40 +0000 (17:35 +0900)]
Bugfix:abnormal using of _dbus_validate_bus_name
Change-Id: I1eb91da587469381f69ada2939a980d8ea1f40e1
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
sanghyeok.oh [Mon, 22 Aug 2016 07:15:49 +0000 (16:15 +0900)]
support NameAcquired & NameLost signal subscription
Change-Id: I6f7c2e39c8872ebae8a68157515ef247325b3cc4
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
INSUN PYO [Fri, 19 Aug 2016 08:03:21 +0000 (17:03 +0900)]
Support Lazy-Mount feature - move user dbus.service from default.target.wants to basic.target.wants
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I5ec89ce65fe196d54a4b130e41a83a82acb40101
INSUN PYO [Fri, 19 Aug 2016 05:18:07 +0000 (14:18 +0900)]
Support Lazy-Mount feature - suprem.sec.samsung.net/confluence/display/SFH/Lazy+mount
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I4b9f4a435f2aae9215bb7d77bb423715884d01e1
Hyotaek Shim [Fri, 19 Aug 2016 04:28:33 +0000 (21:28 -0700)]
Merge "omit standard match iff sender=org.freedesktop.DBus" into tizen
Konrad Lipinski [Wed, 17 Aug 2016 12:27:55 +0000 (14:27 +0200)]
omit standard match iff sender=org.freedesktop.DBus
Change-Id: Ib8a1c138983124a2597b0c700f5c6a2c7dd4744e
Adrian Szyndela [Wed, 17 Aug 2016 14:38:06 +0000 (16:38 +0200)]
kdbus: fixed memory leak in reply_ListNames()
Additionally, added some documentation for _kdbus_list().
Change-Id: I267100ec123f33a1b10f3ce1c9aca3004ac1e9fc
INSUN PYO [Tue, 16 Aug 2016 09:15:48 +0000 (02:15 -0700)]
Merge "kdbus: fixed memory leak in "hello" command." into tizen
Hyotaek Shim [Tue, 16 Aug 2016 09:13:28 +0000 (18:13 +0900)]
Relocate ifdef LIBDBUSPOLICY to avoid build erros when libdbuspolicy is disabled
Change-Id: I8710e8d2ff1911ea11b48984ebda227a0a8658fe
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
Adrian Szyndela [Tue, 16 Aug 2016 08:47:13 +0000 (10:47 +0200)]
kdbus: fixed memory leak in "hello" command.
Change-Id: I0f5c1882a9ffcc9a0186a834ad73e72a10b9f239
INSUN PYO [Tue, 16 Aug 2016 08:38:52 +0000 (01:38 -0700)]
Merge "%reconfigure instead of autoreconf" into tizen
INSUN PYO [Tue, 16 Aug 2016 07:57:32 +0000 (00:57 -0700)]
Merge "kdbus: policy: add more detailed errors descriptions" into tizen
Lukasz Skalski [Wed, 3 Aug 2016 15:23:37 +0000 (17:23 +0200)]
kdbus: policy: add more detailed errors descriptions
Change-Id: I683f77755c6fefafbcc255107839f10362abadb0
Konrad Lipinski [Thu, 11 Aug 2016 12:53:15 +0000 (14:53 +0200)]
%reconfigure instead of autoreconf
Change-Id: Icc74194668757c9e7ebc79d63d4a3b2ec65d0c34
Adrian Szyndela [Wed, 10 Aug 2016 12:38:09 +0000 (14:38 +0200)]
Bugfix: always set n_fds
Change-Id: Ib10e3eb7c102f63a5d63c550858ad4a5edee8c2b
Adrian Szyndela [Wed, 10 Aug 2016 12:03:09 +0000 (14:03 +0200)]
Bugfix: removed double-stripping of parentheses
GVariant keeps body inside structs. This fact is kept hidden from
libdbus user. Thus, struct parentheses have to be added, removed
in proper places. There was one such place in
_dbus_type_reader_gvariant_init(). However, it was not sufficient
and get_const_signature() also got stripping code. Unfortunately,
I didn't notice that stripping should be removed in the first
of these functions. This commit fixes that.
Change-Id: I5c2e6c7c8212d283fd6da1cc998a2711038905f3
Adrian Szyndela [Tue, 2 Aug 2016 12:05:41 +0000 (14:05 +0200)]
Bugfix: corrected sizeofs
Change-Id: I9281352c2afa0bb39c69df35ce28054fab83b994
Hyotaek Shim [Wed, 27 Jul 2016 08:38:04 +0000 (01:38 -0700)]
Merge "fix in system dbus.service (User=dbus, Group=dbus)" into tizen
Hyotaek Shim [Wed, 27 Jul 2016 08:37:35 +0000 (17:37 +0900)]
fix in system dbus.service (User=dbus, Group=dbus)
Change-Id: Iea127741bfe3f5fbe68eb13d98933307420007b2
Hyotaek Shim [Wed, 27 Jul 2016 08:33:33 +0000 (17:33 +0900)]
fix in system dbus.service (User=dbus, Group=dbus)
Change-Id: I5041323980664baecdde25a65230e7c6a3608bac
Hyotaek Shim [Wed, 20 Jul 2016 04:53:52 +0000 (13:53 +0900)]
Onlycap-related fix in system dbus.service (SmackProcessLabel=System)
Change-Id: I725049c020a107774f79cf2685c7505497b6723d
INSUN PYO [Tue, 19 Jul 2016 04:29:08 +0000 (13:29 +0900)]
[PATCH 1/2] kdbus: Fix the overflow for timeout calculation
The maximum value of unsigned long is
4294967295 which is too small
for storing nano second. It makes the overflow in calculation.
Use LLU instead of LU for timeout calculation.
======================================================================
Subject: [PATCH 2/2] kdbus: adjust the default value for timeout to 50 sec
This definition is used by the default value for timeout value.
But in the other places, 50 sec is used by default value for timeout,
instead of using it.
Let's align it with the others
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: Idddaf3f095ad47206f8b6ac11bc46c43c3bc8bd3
Hyotaek Shim [Tue, 19 Jul 2016 01:44:09 +0000 (18:44 -0700)]
Merge "gvariant marshal: nested struct offset size accounts for fixed members" into tizen
Hyotaek Shim [Tue, 19 Jul 2016 01:42:50 +0000 (18:42 -0700)]
Merge "dbus-marshal-gavariant : Update offset bytes size whenever message is appended" into tizen
Karol Lewandowski [Mon, 11 Jul 2016 11:40:38 +0000 (13:40 +0200)]
cynara: Do not drop messages when sender connection is closed
Information about required sender credentials is cached in internal
structures at authentication stage.
Change-Id: Ibe0b3ba8b608728c11347d406c9ab2e4495cafc7
Konrad Lipinski [Thu, 7 Jul 2016 17:01:07 +0000 (19:01 +0200)]
gvariant marshal: nested struct offset size accounts for fixed members
Change-Id: Ib8c7876c9a0072bde28201cb754b26ed20bbf892
Jonghwa Lee [Tue, 5 Jul 2016 02:18:17 +0000 (11:18 +0900)]
dbus-marshal-gavariant : Update offset bytes size whenever message is appended
check_offsets_in_body_for_adding() is called only when former data is not fixed
sized data. If former written data is fixed size one (e.g. integer, boolean..)
it skips to update offset bytes size even message body size exceeds its limits.
It results invalid memory access on reciever-side.
This patch fixes it to update offset bytes size whenever message is appended.
Change-Id: I2b94955d40debc5129b5f3c193e197efb542141b
Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
INSUN PYO [Wed, 29 Jun 2016 04:32:55 +0000 (13:32 +0900)]
increase max_replies_per_connection to 1024 form 128
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I36556b8c5bc02a935a03e7cc18edb01633d1ae97
Hyotaek Shim [Tue, 28 Jun 2016 09:00:02 +0000 (02:00 -0700)]
Merge "bus check privilege : ignore dropping message about signal message when sender's connection is disconnected during checking privilege." into tizen
INSUN PYO [Tue, 28 Jun 2016 08:57:12 +0000 (17:57 +0900)]
bus check privilege : ignore dropping message about signal message when sender's connection is disconnected during checking privilege.
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: Ibbb6b63f3efecf450ea2c34fcd87477ceb1bcc2c
Hyotaek Shim [Tue, 28 Jun 2016 07:38:07 +0000 (16:38 +0900)]
to defend against a security attack of changing external PATH
Change-Id: I5d2149d71b1c593fc337052becefc68f3cf7265c
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
Lukasz Skalski [Mon, 27 Jun 2016 09:38:36 +0000 (11:38 +0200)]
bus: fix bus_context_check_security_policy checking
Change-Id: I41ead9532676d201bdd3396652e2de573136ea60
INSUN PYO [Fri, 24 Jun 2016 06:24:17 +0000 (15:24 +0900)]
Bug fix for signal hash(bloom filter) operations in dbus-transport-kdbus
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I9ad96a0eebf938c24d2531486c117a7096112573
INSUN PYO [Thu, 23 Jun 2016 06:05:24 +0000 (15:05 +0900)]
policy: fix: add missing free #2
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: Ibe6c2f780ecf4ea5ff549266b102546dce6d88d6
Hyotaek Shim [Thu, 23 Jun 2016 05:47:35 +0000 (22:47 -0700)]
Merge "policy: fix: add missing free" into tizen
INSUN PYO [Wed, 22 Jun 2016 04:11:18 +0000 (13:11 +0900)]
increate max_connections_per_user to 512 from 256
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: Ifb592255396e295fd9b34e63b9ba5831e85f2601
Karol Lewandowski [Tue, 21 Jun 2016 16:03:27 +0000 (18:03 +0200)]
policy: fix: add missing free
Change-Id: I4a7cca5935c1bddbdd94a44ebec1c814670380bf
Hyotaek Shim [Fri, 17 Jun 2016 06:24:33 +0000 (15:24 +0900)]
activation: set children oom_score_adj to 0
Change-Id: Ida85bcb12ea8ce0a1af948fb0f1600ed21f3323e
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
INSUN PYO [Thu, 9 Jun 2016 07:06:11 +0000 (16:06 +0900)]
move pid file path of system dbus-daemon from /var/run/dbus/pid to /tmp/dbus_launch
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I5c8d33c56c84bbc00242109a0c10af5c2a7664fd
INSUN PYO [Thu, 9 Jun 2016 06:37:18 +0000 (15:37 +0900)]
Remove --nopidfile flags from system dbus-daemon
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I3ac61db553aa290288792f440e43c6dcd87add8e
Hyotaek Shim [Wed, 8 Jun 2016 06:20:39 +0000 (15:20 +0900)]
Removing some temp files
Change-Id: I4188c820422e41f9f7e3c41c0237c78eafc2c158
Hyotaek Shim [Wed, 8 Jun 2016 06:14:51 +0000 (15:14 +0900)]
Fix for smack error when dbus-daemon(session) accesses proc/cmdline
Change-Id: Ifadafc677821c6a8b0b747d31f1c4128533ce3ed
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
Lukasz Skalski [Wed, 25 May 2016 12:46:10 +0000 (14:46 +0200)]
kdbus: always pack message header as as single PAYLOAD_VEC item
According to PORTING-DBUS1 document [1], the message header in its
entirety must be contained in a single PAYLOAD_VEC item. What's more,
in case of memfd transport, message footer (which contains body signature
and offsets size) has to be attached at the end of message as a yet another
PAYLOAD_VEC item.
[1] https://cgit.freedesktop.org/systemd/systemd/tree/src/libsystemd/sd-bus/PORTING-DBUS1
Change-Id: I282589c0641c1eb97f874fcfd6e3bee6ecacc8ae
sanghyeok.oh [Tue, 24 May 2016 10:24:01 +0000 (19:24 +0900)]
add license file for MIT license
add MIT license for dbus/dbus/dbus-server-launchd.c
Change-Id: I006a3efc8e4fa112dcb3ca95e7e9c2faccf54940
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
Adrian Szyndela [Tue, 24 May 2016 10:08:10 +0000 (03:08 -0700)]
Merge "kdbus: add '--enable-kdbus-sync-calls' configure switch" into tizen
Lukasz Skalski [Mon, 16 May 2016 11:20:03 +0000 (13:20 +0200)]
kdbus: add '--enable-kdbus-sync-calls' configure switch
To compile kdbus transport with native support for synchronous
calls, add '--enable-kdbus-sync-calls' flags to spec file.
Change-Id: Ibe76d32ee7d9d038825deeb98a0d5d72be201b98
Karol Lewandowski [Thu, 19 May 2016 14:14:10 +0000 (07:14 -0700)]
Merge "kdbus: add full support for synchronous method calls" into tizen
Karol Lewandowski [Thu, 19 May 2016 14:14:06 +0000 (07:14 -0700)]
Merge "transport: add initial support for synchronous calls" into tizen
Lukasz Skalski [Fri, 13 May 2016 14:08:36 +0000 (16:08 +0200)]
kdbus: increase kdbus receive pool size to 16M
Current kdbus receive pool size is too small (only 2MB - in GLib
we have 16MB). Due to quite specific 'pool layout' in kdbus module,
2MB was not enough for 512kB messages - according to kdbus docs:
"50% of a pool is always owned by the connection. It is reserved for
kernel queries, handling received messages and other tasks that are
under control of the pool owner. The other 50% of the pool are used
as incoming queue.
As we optionally support user-space based policies, we need fair
allocation schemes. Furthermore, resource utilization should be
maximized, so only minimal resources stay reserved. However, we need
to adapt to a dynamic number of users, as we cannot know how many
users will talk to a connection. Therefore, the current allocation
works like this:
We limit the number of bytes in a destination's pool per sending
user. The space available for a user is 33% of the unused pool space
(whereas the space used by the user itself is also treated as
'unused'). This way, we favor users coming first, but keep enough
pool space available for any following users. Given that messages are
dequeued in FIFO order, this should balance nicely if the number of
users grows. At the same time, this algorithm guarantees that the
space available to a connection is reduced dynamically, the more
concurrent users talk to a connection."
Change-Id: Iffddc018f0d8bf08451d12d305c8d392ed3e1f55
Lukasz Skalski [Fri, 13 May 2016 13:43:54 +0000 (15:43 +0200)]
kdbus: fix memfd kdbus items mapping
Change-Id: I48e9799e4fccaea2016cd77a92ebe971eeb1b660
sanghyeok.oh [Fri, 13 May 2016 02:40:16 +0000 (11:40 +0900)]
modified to check pending call completion
for blocking call(pending_call_block)
after acuire io path, check pending call completion before iteration(poll)
and wake up by any reason, but there are no reply, timeout is not reached, then retry polling,
next time, if it acquire io path, then just enter iteration(poll) without completion check,
for multi-threaded blocking call,
1. if first thread waiting io path(not 1st iteration),
2. second thread is polling,
3. reply message is arrived and this wake up seconds thread's polling,
4. first thread just enter polling until timeout
5. if there are no incoming event, then dead-lock until timeout.
Change-Id: Ifcfe53b7610996d1892519f4a69cf435aa395968
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
Lukasz Skalski [Wed, 11 May 2016 13:04:21 +0000 (15:04 +0200)]
kdbus: add full support for synchronous method calls
Change-Id: Ib7b2115ab6a3ea76f25915eaf153772d2fa1c02f
Hyotaek Shim [Mon, 9 May 2016 07:03:10 +0000 (00:03 -0700)]
Merge "Bug fix for kdbus_do_iteration() causing busy loop" into tizen
Lukasz Skalski [Fri, 6 May 2016 13:54:50 +0000 (15:54 +0200)]
transport: add initial support for synchronous calls
Change-Id: I641e09e8710d97e03ffdb467a35cff4c8889edc7
Lukasz Skalski [Wed, 4 May 2016 15:50:12 +0000 (17:50 +0200)]
policy: temporary workaround for libdbuspolicy parser issue
Change-Id: I04c508a6e14568ad6e28f687a433f6bde3f815f8
Lukasz Skalski [Thu, 28 Apr 2016 13:35:31 +0000 (15:35 +0200)]
kdbus: catch up with latest libdbuspolicy API changes
Change-Id: Ie68b9b9d88cb30f48341f7fcf8cc7caf01c06126
Hyotaek Shim [Thu, 28 Apr 2016 10:35:50 +0000 (19:35 +0900)]
Bug fix for kdbus_do_iteration() causing busy loop
Change-Id: I75a6267471b7fdff2d147514210726a3cec6c5dd
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
Paweł Szewczyk [Fri, 22 Apr 2016 09:13:24 +0000 (11:13 +0200)]
fix some warnings
Change-Id: Iffc672d09b30447ba714e50d5ab182fd6370078f
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Adrian Szyndela [Wed, 20 Apr 2016 14:06:33 +0000 (16:06 +0200)]
reduced number of warnings
Change-Id: I9e28b9eeaa185caa1eeea8e5d7f79feaaae7d799
Adrian Szyndela [Tue, 19 Apr 2016 10:37:40 +0000 (12:37 +0200)]
fix SVACE bugs
WGID 31177: strcpy/stpcpy->snprintf
WGID 31178: strcpy/stpcpy->snprintf
WGID 31179: strcpy/stpcpy->snprintf/strncpy
WGID 31180: use _dbus_strdup for string duplication
WGID 31183: sprintf->snprintf
WGID 31184: sprintf->snprintf
WGID 31185: sprintf->snprintf
WGID 31186: sprintf->snprintf
WGID 31200: added explanation and unified conditions
WGID 31210: added cast to __u64
all other sprintf->snprintf in dbus-transport-kdbus.c
Change-Id: I8a488d37ec8be66370cba7b88a464787dcfeefc3
Karol Lewandowski [Tue, 19 Apr 2016 11:23:37 +0000 (13:23 +0200)]
packaging: Integrate libdbus and dbus spec files
With dbus-1.10 depending on systemd code there is no benefit
in keeping separate spec files.
Change-Id: I3a9311e1730b51b3d4ff1dda513b564d19065aa9
Karol Lewandowski [Tue, 19 Apr 2016 11:00:12 +0000 (13:00 +0200)]
packaging: Remove dbus-x11 flavor
dbus-x11 is not used on tizen.org in any of available profiles.
Change-Id: I94205fbdb526a96202bd2f2165e6a5bcf2c2a080
Karol Lewandowski [Tue, 19 Apr 2016 10:45:06 +0000 (12:45 +0200)]
packaging: Remove documentation packages
Change-Id: I3b2ddc48b26819452ffa73d25d35177997c844b1
Adrian Szyndela [Tue, 19 Apr 2016 09:38:07 +0000 (11:38 +0200)]
Added a strategy for selecting default protocol type.
When a message is created, it is created without context
of a bus. Thus, we have to guess what type of protocol
is correct for the message. This commit introduces
a possibility to influence guessing.
An environment variable is introduced (DBUS_DEFAULT_PROTOCOL_STRATEGY),
with following values recognized:
* first-bus - messages created for type of first opened bus;
* last-bus - messages created for type of last opened bus;
* last-message - messages created for type of last sent message;
* dbus1 - messages created with dbus1 protocol;
* gvariant - messages created with GVariant protocol.
last-bus is a default strategy.
Change-Id: I2a185761973191ad5917bc2b6f4bfb2f4a3ed547
Adrian Szyndela [Mon, 18 Apr 2016 12:27:23 +0000 (14:27 +0200)]
fixed some compiler/Valgrind warnings
Change-Id: I5c9c0f7c5e50f89e69db9e5f000b181ebc98add6
Lukasz Skalski [Tue, 19 Apr 2016 09:10:09 +0000 (11:10 +0200)]
refactoring: org.freedesktop.DBus method handling simplifications
Change-Id: I4060e9ad4a6703cdcfdccd3bce69fd2b2c958031
Adrian Szyndela [Fri, 15 Apr 2016 11:24:50 +0000 (13:24 +0200)]
refactoring: bloom filters handling moved to low-level
Constructing bloom filters belongs to low level API now.
Change-Id: I95b524e91905029a1a040a95204e7008120cd89c
Adrian Szyndela [Fri, 15 Apr 2016 10:57:49 +0000 (12:57 +0200)]
refactoring: cleanup
String name to unique id conversion simplified.
Item names for debug strings simplified.
Change-Id: I934c6e3f64708db777dfdff2ffb4b4f5e7fa41a2
Adrian Szyndela [Fri, 15 Apr 2016 10:51:58 +0000 (12:51 +0200)]
refactoring: using local types where available
Change-Id: I91cb72a2c52d1d55fdfd8afb1e6599483d637ea1
Adrian Szyndela [Fri, 15 Apr 2016 09:41:18 +0000 (11:41 +0200)]
refactoring: low-level API types changed to low-level
Change-Id: I934800df6da5ad5fa34366683541782eb88daa9f
Adrian Szyndela [Fri, 15 Apr 2016 09:24:25 +0000 (11:24 +0200)]
refactoring: coding style
Change-Id: I2a39f9b86a5ebbde11ee496ecc40a6cc08e6a1a1
Adrian Szyndela [Thu, 14 Apr 2016 12:35:57 +0000 (14:35 +0200)]
fix for memleaks
Freeing non-converted message after conversion
Freeing string objects
Freeing unique name in kdbus transport at end-of-life
Freeing matchmaker in kdbus transport at end-of-life
Change-Id: Iae4e231c52b78af3efd5a8a366fc01e50b03feeb
Adrian Szyndela [Mon, 11 Apr 2016 12:31:59 +0000 (14:31 +0200)]
checking policy: don't check 'ins' if not a method call
Change-Id: I666bc6474475906aa0ca2de96e47bfaa2c402ce2
Adrian Szyndela [Thu, 18 Feb 2016 14:17:01 +0000 (15:17 +0100)]
Update to dbus-1.10.6
Note: from version 1.10 it's required to have systemd support to be enabled not
only in dbus-daemon code but also in libdbus. This is because maintainers removed
built-in systemd support code (dbus/sd-daemon.c) and now depend on libsystemd-
provided functionality.
Additionally, update pkgconfig name to libsystemd (as required by configure.ac)
Change-Id: I2056086a9281543695643ac31fd3ab8648a4d205
Hyotaek, Shim [Fri, 18 Mar 2016 06:21:43 +0000 (15:21 +0900)]
MOVe License patch (LGPL2.1+, BSD2.0 license files)
Signed-off-by: Hyotaek, Shim <hyotaek.shim@samsung.com>
Change-Id: Ie0e4364412bdf83cde0dd33faddef7a22b856f58
Adrian Szyndela [Tue, 15 Dec 2015 13:25:50 +0000 (14:25 +0100)]
add dbuspolicy support
Change-Id: I1bef17d3930a2ca626d3c002eaa10cf6f16c8aac