diff options
author | Lukasz Skalski <l.skalski@samsung.com> | 2015-08-24 18:54:46 +0200 |
---|---|---|
committer | Seung-Woo Kim <sw0312.kim@samsung.com> | 2016-12-14 13:50:37 +0900 |
commit | 72e398bd33728056e08a8b96cccf7e5d72f882a5 (patch) | |
tree | 572db22e96da71b9b52f8a45fd137ea789fe2e3c | |
parent | 8678861ee4325e601154b1d4658a2bd9964ea05b (diff) |
kdbus: disable internal kdbus policy
Possibilities of connections to own, see and talk to well-known names
are already restricted by LSM hooks.
Change-Id: I62d86a506a85e6c48bdd3e0f8b11f1aa5a918c75
Signed-off-by: Lukasz Skalski <l.skalski@samsung.com>
-rw-r--r-- | ipc/kdbus/connection.c | 6 | ||||
-rw-r--r-- | ipc/kdbus/names.c | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/ipc/kdbus/connection.c b/ipc/kdbus/connection.c index 2d54105d6f20..880007724bef 100644 --- a/ipc/kdbus/connection.c +++ b/ipc/kdbus/connection.c @@ -1223,10 +1223,13 @@ static struct kdbus_reply *kdbus_conn_call(struct kdbus_conn *src, if (ret) goto exit; + /* Disable internal kdbus policy - possibilities of connections to own, + * see and talk to well-known names are restricted by LSM hooks if (!kdbus_conn_policy_talk(src, current_cred(), dst)) { ret = -EPERM; goto exit; } + */ wait = kdbus_reply_new(dst, src, &kmsg->msg, name, true); if (IS_ERR(wait)) { @@ -1305,9 +1308,12 @@ static int kdbus_conn_unicast(struct kdbus_conn *src, struct kdbus_kmsg *kmsg) if (!kdbus_match_db_match_kmsg(dst->match_db, src, kmsg) || !kdbus_conn_policy_talk(dst, NULL, src)) goto exit; + /* Disable internal kdbus policy - possibilities of connections to own, + * see and talk to well-known names are restricted by LSM hooks } else if (!kdbus_conn_policy_talk(src, current_cred(), dst)) { ret = -EPERM; goto exit; + */ } else if (kmsg->msg.flags & KDBUS_MSG_EXPECT_REPLY) { wait = kdbus_reply_new(dst, src, &kmsg->msg, name, false); if (IS_ERR(wait)) { diff --git a/ipc/kdbus/names.c b/ipc/kdbus/names.c index df99e4df815b..90e0c016f66e 100644 --- a/ipc/kdbus/names.c +++ b/ipc/kdbus/names.c @@ -290,10 +290,13 @@ int kdbus_name_acquire(struct kdbus_name_registry *reg, down_write(®->rwlock); + /* Disable internal kdbus policy - possibilities of connections to own, + * see and talk to well-known names are restricted by LSM hooks if (!kdbus_conn_policy_own_name(conn, current_cred(), name)) { ret = -EPERM; goto exit_unlock; } + */ hash = kdbus_strhash(name); e = kdbus_name_find(reg, hash, name); |