platform/upstream/dbus.git
8 years agobugfix: sec_label was copied without ending byte 74/88074/1 accepted/tizen/common/20160919.154452 accepted/tizen/ivi/20160920.051616 accepted/tizen/mobile/20160920.051520 accepted/tizen/tv/20160920.051534 accepted/tizen/wearable/20160920.051557 submit/tizen/20160919.053144
Adrian Szyndela [Tue, 13 Sep 2016 07:59:34 +0000 (09:59 +0200)]
bugfix: sec_label was copied without ending byte

Change-Id: I3d9aa7f2d608e6706600a87ad5dc570033244f98

8 years agokdbus: fix for GetConnectionSELinuxSecurityContext method call 70/86870/1
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

8 years agoMerge "calculate kdbus timeout based on user timeout" into tizen accepted/tizen/common/20160905.171607 accepted/tizen/ivi/20160907.060148 accepted/tizen/mobile/20160907.060059 accepted/tizen/tv/20160907.060115 accepted/tizen/wearable/20160907.060135 submit/tizen/20160905.073119 submit/tizen/20160905.094007 submit/tizen/20160905.095924
Hyotaek Shim [Thu, 1 Sep 2016 03:38:20 +0000 (20:38 -0700)]
Merge "calculate kdbus timeout based on user timeout" into tizen

8 years agocalculate kdbus timeout based on user timeout 79/85479/5
Konrad Lipinski [Thu, 25 Aug 2016 09:07:26 +0000 (11:07 +0200)]
calculate kdbus timeout based on user timeout

Change-Id: I9fd1720e5c2a1edaa1fcd66b78df0b0238e9ce9f

8 years agoBugfix:abnormal using of _dbus_validate_bus_name 49/86249/2
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>
8 years agosupport NameAcquired & NameLost signal subscription 36/84736/6 accepted/tizen/common/20160829.140203 accepted/tizen/ivi/20160829.232650 accepted/tizen/mobile/20160829.232558 accepted/tizen/tv/20160829.232608 accepted/tizen/wearable/20160829.232632 submit/tizen/20160829.055144
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>
8 years agoSupport Lazy-Mount feature - move user dbus.service from default.target.wants to... 58/84558/1 accepted/tizen/common/20160822.132729 accepted/tizen/ivi/20160823.041258 accepted/tizen/mobile/20160823.041127 accepted/tizen/tv/20160823.041206 accepted/tizen/wearable/20160823.041235 submit/tizen/20160822.012953 submit/tizen/20160822.045932
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

8 years agoSupport Lazy-Mount feature - http://suprem.sec.samsung.net/confluence/display/SFH... 08/84508/1
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

8 years agoMerge "omit standard match iff sender=org.freedesktop.DBus" into tizen
Hyotaek Shim [Fri, 19 Aug 2016 04:28:33 +0000 (21:28 -0700)]
Merge "omit standard match iff sender=org.freedesktop.DBus" into tizen

8 years agoomit standard match iff sender=org.freedesktop.DBus 41/84241/2
Konrad Lipinski [Wed, 17 Aug 2016 12:27:55 +0000 (14:27 +0200)]
omit standard match iff sender=org.freedesktop.DBus

Change-Id: Ib8a1c138983124a2597b0c700f5c6a2c7dd4744e

8 years agokdbus: fixed memory leak in reply_ListNames() 62/84262/1
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

8 years agoMerge "kdbus: fixed memory leak in "hello" command." into tizen accepted/tizen/common/20160817.132822 accepted/tizen/ivi/20160817.040717 accepted/tizen/mobile/20160817.040629 accepted/tizen/tv/20160817.040646 accepted/tizen/wearable/20160817.040702 submit/tizen/20160816.092849 submit/tizen/20160816.093841
INSUN PYO [Tue, 16 Aug 2016 09:15:48 +0000 (02:15 -0700)]
Merge "kdbus: fixed memory leak in "hello" command." into tizen

8 years agoRelocate ifdef LIBDBUSPOLICY to avoid build erros when libdbuspolicy is disabled 45/84045/1
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>
8 years agokdbus: fixed memory leak in "hello" command. 16/84016/1
Adrian Szyndela [Tue, 16 Aug 2016 08:47:13 +0000 (10:47 +0200)]
kdbus: fixed memory leak in "hello" command.

Change-Id: I0f5c1882a9ffcc9a0186a834ad73e72a10b9f239

8 years agoMerge "%reconfigure instead of autoreconf" into tizen
INSUN PYO [Tue, 16 Aug 2016 08:38:52 +0000 (01:38 -0700)]
Merge "%reconfigure instead of autoreconf" into tizen

8 years agoMerge "kdbus: policy: add more detailed errors descriptions" 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

8 years agokdbus: policy: add more detailed errors descriptions 24/82524/2
Lukasz Skalski [Wed, 3 Aug 2016 15:23:37 +0000 (17:23 +0200)]
kdbus: policy: add more detailed errors descriptions

Change-Id: I683f77755c6fefafbcc255107839f10362abadb0

8 years ago%reconfigure instead of autoreconf 46/83546/1
Konrad Lipinski [Thu, 11 Aug 2016 12:53:15 +0000 (14:53 +0200)]
%reconfigure instead of autoreconf

Change-Id: Icc74194668757c9e7ebc79d63d4a3b2ec65d0c34

8 years agoBugfix: always set n_fds 02/83402/1 accepted/tizen/common/20160812.140624 accepted/tizen/ivi/20160812.010454 accepted/tizen/mobile/20160812.010451 accepted/tizen/tv/20160812.010445 accepted/tizen/wearable/20160812.010448 submit/tizen/20160810.234659
Adrian Szyndela [Wed, 10 Aug 2016 12:38:09 +0000 (14:38 +0200)]
Bugfix: always set n_fds

Change-Id: Ib10e3eb7c102f63a5d63c550858ad4a5edee8c2b

8 years agoBugfix: removed double-stripping of parentheses 95/83395/1
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

8 years agoBugfix: corrected sizeofs 94/82294/1 accepted/tizen/common/20160809.183722 accepted/tizen/ivi/20160809.232322 accepted/tizen/mobile/20160809.232314 accepted/tizen/tv/20160809.232304 accepted/tizen/wearable/20160809.232424 submit/tizen/20160809.013929
Adrian Szyndela [Tue, 2 Aug 2016 12:05:41 +0000 (14:05 +0200)]
Bugfix: corrected sizeofs

Change-Id: I9281352c2afa0bb39c69df35ce28054fab83b994

8 years agoMerge "fix in system dbus.service (User=dbus, Group=dbus)" into tizen
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

8 years agofix in system dbus.service (User=dbus, Group=dbus) 15/81615/1 accepted/tizen/common/20160727.151436 submit/tizen/20160727.083823
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

8 years agofix in system dbus.service (User=dbus, Group=dbus) 12/81612/1 submit/accepted/tizen_common/20160727.083431
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

8 years agoOnlycap-related fix in system dbus.service (SmackProcessLabel=System) 56/80756/1 accepted/tizen/common/20160720.173252 accepted/tizen/ivi/20160720.055721 accepted/tizen/mobile/20160720.055618 accepted/tizen/tv/20160720.055639 accepted/tizen/wearable/20160720.055700 submit/tizen/20160720.045510
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

8 years ago[PATCH 1/2] kdbus: Fix the overflow for timeout calculation 96/80596/1 accepted/tizen/ivi/20160719.104426 accepted/tizen/mobile/20160719.104436 accepted/tizen/tv/20160719.104422 accepted/tizen/wearable/20160719.104416 submit/tizen/20160719.063348
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

8 years agoMerge "gvariant marshal: nested struct offset size accounts for fixed members" into...
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

8 years agoMerge "dbus-marshal-gavariant : Update offset bytes size whenever message is appended...
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

8 years agocynara: Do not drop messages when sender connection is closed 86/79486/1 accepted/tizen/common/20160713.144916 accepted/tizen/ivi/20160713.094327 accepted/tizen/mobile/20160713.094320 accepted/tizen/tv/20160713.094306 accepted/tizen/wearable/20160713.094315 submit/tizen/20160713.054211
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

8 years agogvariant marshal: nested struct offset size accounts for fixed members 17/79017/1
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

8 years agodbus-marshal-gavariant : Update offset bytes size whenever message is appended 70/78270/1
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>
8 years agoincrease max_replies_per_connection to 1024 form 128 88/77188/1 accepted/tizen/common/20160703.130033 accepted/tizen/ivi/20160630.002906 accepted/tizen/mobile/20160630.002812 accepted/tizen/tv/20160630.002852 accepted/tizen/wearable/20160630.002832 submit/tizen/20160629.044513 submit/tizen_common/20160701.180000
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

8 years agoMerge "bus check privilege : ignore dropping message about signal message when sender...
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

8 years agobus check privilege : ignore dropping message about signal message when sender's... 17/77017/1 accepted/tizen/ivi/20160629.020919 accepted/tizen/mobile/20160629.020950 accepted/tizen/tv/20160629.020932 accepted/tizen/wearable/20160629.020939 submit/tizen/20160628.090030
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

8 years agoto defend against a security attack of changing external PATH 84/76984/1
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>
8 years agobus: fix bus_context_check_security_policy checking 12/76812/1 submit/tizen/20160628.005120
Lukasz Skalski [Mon, 27 Jun 2016 09:38:36 +0000 (11:38 +0200)]
bus: fix bus_context_check_security_policy checking

Change-Id: I41ead9532676d201bdd3396652e2de573136ea60

8 years agoBug fix for signal hash(bloom filter) operations in dbus-transport-kdbus 02/76502/1 accepted/tizen/common/20160627.191717 submit/tizen/20160624.063050 submit/tizen/20160628.003115
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

8 years agopolicy: fix: add missing free #2 89/76189/1 submit/tizen/20160623.060952
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

8 years agoMerge "policy: fix: add missing free" into tizen
Hyotaek Shim [Thu, 23 Jun 2016 05:47:35 +0000 (22:47 -0700)]
Merge "policy: fix: add missing free" into tizen

8 years agoincreate max_connections_per_user to 512 from 256 64/75864/1 submit/tizen/20160622.041941
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

8 years agopolicy: fix: add missing free 33/75833/1
Karol Lewandowski [Tue, 21 Jun 2016 16:03:27 +0000 (18:03 +0200)]
policy: fix: add missing free

Change-Id: I4a7cca5935c1bddbdd94a44ebec1c814670380bf

8 years agoactivation: set children oom_score_adj to 0 35/75235/1
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>
8 years agomove pid file path of system dbus-daemon from /var/run/dbus/pid to /tmp/dbus_launch 85/73685/1 accepted/tizen/common/20160610.180805 accepted/tizen/ivi/20160610.010927 accepted/tizen/mobile/20160610.011005 accepted/tizen/tv/20160610.010936 accepted/tizen/wearable/20160610.010945 submit/tizen/20160609.071543
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

8 years agoRemove --nopidfile flags from system dbus-daemon 76/73676/1 submit/tizen/20160609.065037
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

8 years agoRemoving some temp files 33/73433/1 accepted/tizen/ivi/20160609.090400 accepted/tizen/mobile/20160609.090331 accepted/tizen/tv/20160609.090437 accepted/tizen/wearable/20160609.090342 submit/tizen/20160608.062323
Hyotaek Shim [Wed, 8 Jun 2016 06:20:39 +0000 (15:20 +0900)]
Removing some temp files

Change-Id: I4188c820422e41f9f7e3c41c0237c78eafc2c158

8 years agoFix for smack error when dbus-daemon(session) accesses proc/cmdline 31/73431/1
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>
8 years agokdbus: always pack message header as as single PAYLOAD_VEC item 89/71489/1 accepted/tizen/common/20160530.131628 accepted/tizen/ivi/20160602.021635 accepted/tizen/mobile/20160602.021631 accepted/tizen/tv/20160602.021607 accepted/tizen/wearable/20160602.021621 submit/tizen/20160527.082529
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

8 years agoadd license file for MIT license 75/71175/1 accepted/tizen/common/20160526.145915 submit/tizen/20160524.103010
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>
8 years agoMerge "kdbus: add '--enable-kdbus-sync-calls' configure switch" into tizen
Adrian Szyndela [Tue, 24 May 2016 10:08:10 +0000 (03:08 -0700)]
Merge "kdbus: add '--enable-kdbus-sync-calls' configure switch" into tizen

8 years agokdbus: add '--enable-kdbus-sync-calls' configure switch 43/69743/2
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

8 years agoMerge "kdbus: add full support for synchronous method calls" into tizen
Karol Lewandowski [Thu, 19 May 2016 14:14:10 +0000 (07:14 -0700)]
Merge "kdbus: add full support for synchronous method calls" into tizen

8 years agoMerge "transport: add initial support for synchronous 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

8 years agokdbus: increase kdbus receive pool size to 16M 27/69527/2 accepted/tizen/common/20160517.173904 accepted/tizen/ivi/20160517.032312 accepted/tizen/mobile/20160517.032335 accepted/tizen/tv/20160517.032329 accepted/tizen/wearable/20160517.032352 submit/tizen/20160516.081330
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

8 years agokdbus: fix memfd kdbus items mapping 24/69524/1
Lukasz Skalski [Fri, 13 May 2016 13:43:54 +0000 (15:43 +0200)]
kdbus: fix memfd kdbus items mapping

Change-Id: I48e9799e4fccaea2016cd77a92ebe971eeb1b660

8 years agomodified to check pending call completion 77/69377/1
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>
8 years agokdbus: add full support for synchronous method calls 08/69108/1
Lukasz Skalski [Wed, 11 May 2016 13:04:21 +0000 (15:04 +0200)]
kdbus: add full support for synchronous method calls

Change-Id: Ib7b2115ab6a3ea76f25915eaf153772d2fa1c02f

8 years agoMerge "Bug fix for kdbus_do_iteration() causing busy loop" into tizen accepted/tizen/common/20160510.050907 accepted/tizen/ivi/20160510.002139 accepted/tizen/mobile/20160510.002101 accepted/tizen/tv/20160510.002122 accepted/tizen/wearable/20160510.002105 submit/tizen/20160509.070355
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

8 years agotransport: add initial support for synchronous calls 71/68571/1
Lukasz Skalski [Fri, 6 May 2016 13:54:50 +0000 (15:54 +0200)]
transport: add initial support for synchronous calls

Change-Id: I641e09e8710d97e03ffdb467a35cff4c8889edc7

8 years agopolicy: temporary workaround for libdbuspolicy parser issue 84/68484/1 accepted/tizen/common/20160509.134950 submit/tizen/20160509.050757
Lukasz Skalski [Wed, 4 May 2016 15:50:12 +0000 (17:50 +0200)]
policy: temporary workaround for libdbuspolicy parser issue

Change-Id: I04c508a6e14568ad6e28f687a433f6bde3f815f8

8 years agokdbus: catch up with latest libdbuspolicy API changes 38/67838/1 accepted/tizen/common/20160429.170330 accepted/tizen/ivi/20160429.011827 accepted/tizen/mobile/20160429.011802 accepted/tizen/tv/20160429.011722 accepted/tizen/wearable/20160429.011727 submit/tizen/20160428.152642
Lukasz Skalski [Thu, 28 Apr 2016 13:35:31 +0000 (15:35 +0200)]
kdbus: catch up with latest libdbuspolicy API changes

Change-Id: Ie68b9b9d88cb30f48341f7fcf8cc7caf01c06126

8 years agoBug fix for kdbus_do_iteration() causing busy loop 17/67817/1 submit/tizen/20160428.103823
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>
8 years agofix some warnings 94/66994/1
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>
8 years agoreduced number of warnings 34/66734/1
Adrian Szyndela [Wed, 20 Apr 2016 14:06:33 +0000 (16:06 +0200)]
reduced number of warnings

Change-Id: I9e28b9eeaa185caa1eeea8e5d7f79feaaae7d799

8 years agofix SVACE bugs 73/66573/7 accepted/tizen/common/20160422.172237 accepted/tizen/ivi/20160423.060622 accepted/tizen/mobile/20160423.055705 accepted/tizen/tv/20160423.060059 accepted/tizen/wearable/20160423.060351 submit/tizen/20160422.093504
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

8 years agopackaging: Integrate libdbus and dbus spec files 60/66560/5
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

8 years agopackaging: Remove dbus-x11 flavor 59/66559/4
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

8 years agopackaging: Remove documentation packages 58/66558/4
Karol Lewandowski [Tue, 19 Apr 2016 10:45:06 +0000 (12:45 +0200)]
packaging: Remove documentation packages

Change-Id: I3b2ddc48b26819452ffa73d25d35177997c844b1

8 years agoAdded a strategy for selecting default protocol type. 29/66529/3
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

8 years agofixed some compiler/Valgrind warnings 81/66381/2
Adrian Szyndela [Mon, 18 Apr 2016 12:27:23 +0000 (14:27 +0200)]
fixed some compiler/Valgrind warnings

Change-Id: I5c9c0f7c5e50f89e69db9e5f000b181ebc98add6

8 years agorefactoring: org.freedesktop.DBus method handling simplifications 62/66562/1
Lukasz Skalski [Tue, 19 Apr 2016 09:10:09 +0000 (11:10 +0200)]
refactoring: org.freedesktop.DBus method handling simplifications

Change-Id: I4060e9ad4a6703cdcfdccd3bce69fd2b2c958031

8 years agorefactoring: bloom filters handling moved to low-level 00/66300/1
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

8 years agorefactoring: cleanup 99/66299/1
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

8 years agorefactoring: using local types where available 98/66298/1
Adrian Szyndela [Fri, 15 Apr 2016 10:51:58 +0000 (12:51 +0200)]
refactoring: using local types where available

Change-Id: I91cb72a2c52d1d55fdfd8afb1e6599483d637ea1

8 years agorefactoring: low-level API types changed to low-level 97/66297/1
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

8 years agorefactoring: coding style 96/66296/1
Adrian Szyndela [Fri, 15 Apr 2016 09:24:25 +0000 (11:24 +0200)]
refactoring: coding style

Change-Id: I2a39f9b86a5ebbde11ee496ecc40a6cc08e6a1a1

8 years agofix for memleaks 16/66016/2
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

8 years agochecking policy: don't check 'ins' if not a method call 84/65584/1
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

8 years agoUpdate to dbus-1.10.6 15/64815/1 accepted/tizen/common/20160406.143833 accepted/tizen/ivi/20160406.014807 accepted/tizen/mobile/20160406.014711 accepted/tizen/tv/20160406.014732 accepted/tizen/wearable/20160406.014752 submit/tizen/20160405.144419
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

8 years agoMOVe License patch (LGPL2.1+, BSD2.0 license files)
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

8 years agoadd dbuspolicy support
Adrian Szyndela [Tue, 15 Dec 2015 13:25:50 +0000 (14:25 +0100)]
add dbuspolicy support

Change-Id: I1bef17d3930a2ca626d3c002eaa10cf6f16c8aac

8 years agodbus:modified to default allow own & send method_call for system bus
sanghyeok.oh [Thu, 4 Feb 2016 06:36:53 +0000 (15:36 +0900)]
dbus:modified to default allow own & send method_call for system bus

Change-Id: I439cfcbf9c8e44217f6a906836c579dd952b9ec7
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
8 years agoFixed remarshalling and getting signature
Adrian Szyndela [Tue, 2 Feb 2016 13:27:50 +0000 (14:27 +0100)]
Fixed remarshalling and getting signature

A few fixes:
- remarshalling to GVariant lacked locking of messages. It caused
  missing signature and offsets.
- dbus_message_get_signature returned signature with outer parentheses.
- removed unused param in _dbus_header_load_gvariant().
- editorial corrections in kdbus_decode_dbus_message().

Change-Id: I29ca21cef6769b725be0c98580f54313bda842c8

8 years agoRemembering last offset and position at the message level
Adrian Szyndela [Mon, 25 Jan 2016 08:38:10 +0000 (09:38 +0100)]
Remembering last offset and position at the message level

In GVariant, offsets in structs are stored for every end
of variable-sized elements except the last one.
We never know if an element we just added is the last one.
Therefore, the offset may be added when next element is added.
However, some users use multiple iterators. This change fixes
it at the root level - last offset value and position is kept
in the message.

Change-Id: I954657424d9da075edb10e5630b27df5bca8f917

8 years agoDisable GVARIANT feature temporally
INSUN PYO [Mon, 18 Jan 2016 10:10:51 +0000 (19:10 +0900)]
Disable GVARIANT feature temporally

Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I84cf169d64f59b6b2086ade14a827b252ab44b97

8 years agoAdd kdbus transport
Adrian Szyndela [Thu, 7 Jan 2016 13:48:48 +0000 (14:48 +0100)]
Add kdbus transport

This reverts commit 197db0df78e0a9f82df4162885854f99ff749505,
which reverts commit 771f5155c9a393a242329988d56661a51fc04e6c.

Change-Id: I4133020c585a6f9b42f487ffae4d2005b25a1d08

8 years agodbus:MOVe:modify license ID
sanghyeok.oh [Wed, 30 Dec 2015 07:12:18 +0000 (16:12 +0900)]
dbus:MOVe:modify license ID

Change-Id: Iea6db9311c918f99059bb98e8bd396b36387d902
Signed-off-by: sanghyeok.oh <sanghyeok.oh@samsung.com>
8 years agoRevert "Add kdbus transport"
Hyotaek, Shim [Wed, 16 Dec 2015 06:27:54 +0000 (15:27 +0900)]
Revert "Add kdbus transport"

This reverts commit 771f5155c9a393a242329988d56661a51fc04e6c.

Change-Id: I73b6adc6b76b63e972f7228c88c18dabda81b006

8 years agoAdd kdbus transport
Adrian Szyndela [Fri, 30 Oct 2015 10:19:33 +0000 (11:19 +0100)]
Add kdbus transport

This commit introduces ABI break due to size change of DBusMessageIter
structure. Consequently, all packages depending on libdbus need to be rebuilt.

Other authors:
Paweł Szewczyk <p.szewczyk@samsung.com>
Karol Lewandowski <k.lewandowsk@samsung.com>
and possibly others

Change-Id: Ie04b34295c38e5aaac63982996fa9eddc97dd696

8 years agoRevert "Perform Cynara runtime policy checks by default"
Lukasz Skalski [Wed, 23 Sep 2015 09:24:29 +0000 (11:24 +0200)]
Revert "Perform Cynara runtime policy checks by default"

This reverts commit e8610297cf7031e94eb314a2e8c11246f4405403.

Change-Id: Ifb60464c705f5b4e92f02f9e809d23e982d31c3d
Signed-off-by: Lukasz Skalski <l.skalski@samsung.com>
8 years agoPerform Cynara runtime policy checks by default
Jacek Bukarewicz [Tue, 23 Jun 2015 09:08:48 +0000 (11:08 +0200)]
Perform Cynara runtime policy checks by default

This change introduces http://tizen.org/privilege/internal/dbus privilege
which is supposed to be available only to trusted system resources.
Checks for this privilege are used in place of certain allow rules to
make security policy more strict.

For system bus sending and receiving signals now requires
http://tizen.org/privilege/internal/dbus privilege. Requesting name
ownership and sending methods is still denied by default.

For session bus http://tizen.org/privilege/internal/dbus privilege
is now required for requesting name, calling methods, sending and receiving
signals.

Services are supposed to override these default settings to implement their
own security policy.

Change-Id: Ifb4a160bf6e0638404e0295a2e4fa3077efd881c
Signed-off-by: Jacek Bukarewicz <j.bukarewicz@samsung.com>
8 years agopackaging: remove character class negation for sed
José Bollo [Wed, 29 Apr 2015 13:58:13 +0000 (15:58 +0200)]
packaging: remove character class negation for sed

When running the command sed provided by toybox, the expression
[^[:cntrl:]] is not understood, what forbids to detect DBUS and
cause further errors.

This patch removes this expression.

Change-Id: If30543fadddf8b6811e14b548a747be99612894b
Signed-off-by: José Bollo <jose.bollo@open.eurogiciel.org>
8 years agoDo not package libdbus-1.la file
Jacek Bukarewicz [Fri, 20 Mar 2015 11:16:55 +0000 (12:16 +0100)]
Do not package libdbus-1.la file

Change-Id: I8de1d91e6ab3c891de9549bfb94ae637d7ff664a

8 years agoAdd missing security manifests
Jacek Bukarewicz [Fri, 14 Nov 2014 09:47:29 +0000 (10:47 +0100)]
Add missing security manifests

Change-Id: I765c1f189a4496620e5edc8c02b3055db5b45c09

8 years agoDo not rely on Cynara cache when processing check rules
Jacek Bukarewicz [Tue, 3 Mar 2015 16:37:39 +0000 (17:37 +0100)]
Do not rely on Cynara cache when processing check rules

Cynara cache was required when processing messages that have been
blocked at the sender's message queue. Reliance on cache turned out to be
unacceptable due to the fact that some policies are not cacheable. For example
responses provided by Cynara askuser plugin might be single-use and thus cannot
be cached.

The solution is to attach deferred message to the message object when policy result
is unavailable. Upon next bus_check_privilege call use response from Cynara which
is saved in deferred message object.

Change-Id: I17152343540d7b8d13ad3540c25c043d57aa5949

8 years agoFix several BusResult/dbus_bool_t mismatches
Jacek Bukarewicz [Mon, 9 Feb 2015 15:25:31 +0000 (16:25 +0100)]
Fix several BusResult/dbus_bool_t mismatches

They were found by temporarily redefining BusResult in the following way:

 typedef enum { BUS_RESULT_TRUE_E, BUS_RESULT_FALSE_E, BUS_RESULT_LATER_E } bus_result_t;
 typedef struct { bus_result_t result; } BusResult;
 #define BUS_RESULT_TRUE ((BusResult){BUS_RESULT_TRUE_E})
 #define BUS_RESULT_FALSE ((BusResult){BUS_RESULT_FALSE_E})
 #define BUS_RESULT_LATER ((BusResult){BUS_RESULT_LATER_E})

It doesn't compile because equality operator is not defined for structs.
Also, structs are not allowed in switch statement. However, some errors
indicated type mismatches which are now fixed.

Change-Id: I0eb5368359f342e0f4239a2ad95d34b9a8e10a23
Signed-off-by: Jacek Bukarewicz <j.bukarewicz@samsung.com>
8 years agoAdd <check own="..." > support
Jacek Bukarewicz [Thu, 27 Nov 2014 10:26:21 +0000 (11:26 +0100)]
Add <check own="..." > support

Policy result unavailability is handled like send rules - dispatching
messages from the sender is blocked and resumed when result becomes
available.

Handler of "RequestName" method needs to return BUS_RESULT_LATER when
policy result is not known therefore its return type is modified.
Since bus message handlers are put into function pointer array other
message handler function singatures are also affected.

Change-Id: I4c2cbd4585e41fccd8a30f825a8f0d342ab56755

8 years agoHandle receive rule result unavailability and message broadcasts
Jacek Bukarewicz [Fri, 28 Nov 2014 11:39:33 +0000 (12:39 +0100)]
Handle receive rule result unavailability and message broadcasts

When message is sent to the addressed recipient and receive rule
result is unavailable we don't want to block the sender
as it most likely will be the privileged service, so instead we queue
it at the recipient. Any further messages sent to it will be queued to
maintain message order. Once the answer from Cynara arrives messages are
dispatched from the recipient queue. In such case full dispatch is
performed - messages are sent to addressed recipient and other
interested connections.
Messages sent to non-addressed recipients (eavesdroppers or broadcast
message recipients) are handled in a similar way. The difference is
that it is not full dispatch meaning message is sent to a single recipient.

Change-Id: Iecd5395f75a4c7811fa97247a37d8fc4d42e8814

8 years agoDisable message dispatching when send rule result is not known
Jacek Bukarewicz [Fri, 28 Nov 2014 11:07:39 +0000 (12:07 +0100)]
Disable message dispatching when send rule result is not known

When unicast message to addressed recipient is sent and policy result
is not available message dispatch from the sender is disabled.
This also means that any further messages from the given connection are
put into the incoming queue. If response is received message dispatching
is resumed. This time answer is expected to be in cache so the message is
processed synchronously.
Receive rule result unavailability is not yet handled - such messages are
rejected. Also, if message is sent to non-addressed recipient message
is silently dropped.

Change-Id: Ia45905baf667ca42f386c1def108eca190d615bb

8 years agoIntegration of asynchronous security checks
Jacek Bukarewicz [Thu, 27 Nov 2014 17:11:05 +0000 (18:11 +0100)]
Integration of asynchronous security checks

This commit introduces basic framework for asynchronous policy
checks and Cynara integration code. Functions for checking security
policy can now return third value - BUS_RESULT_LATER denoting check
result unavailability. Whenever policy checker cannot decide on the
result of the check it is supposed to allocate DeferredMessage structure
that will be passed to the upper layers which can decide what should be
done in such situation.
Proper handling of such case will be implemented in subsequent commits.
Currently such return value results in message denial.

Change-Id: I324b6ab68442e493853d8fe219c7a37fbd831872

8 years agopolicy: add <check> element
Patrick Ohly [Wed, 30 Jul 2014 08:00:59 +0000 (10:00 +0200)]
policy: add <check> element

The new <check> element is almost the same as <allow> and <deny>. The
difference is that it has an additional "privilege" parameter which
will be tested at runtime. Depending on the outcome of the check, the
rule turns into an allow or deny rule.

Executing these checks will be implemented separately. At the moment,
a <check> is basically the same as <deny>.

The representation of a rule grows by one additional pointer and needs
one additional bit to represent <check> in addition to <allow>/<deny>.
Reordering elements might mitigate this effect.

Change-Id: I25baa802fdf41413a78200273c3a0b17ae7f1cfa