From 96b254db5659ea0c706d2277d860139b45e2238c Mon Sep 17 00:00:00 2001 From: Lukasz Skalski Date: Mon, 11 Apr 2016 15:07:10 +0200 Subject: [PATCH] kdbus: don't check 'out' policy for method return Change-Id: I7ac8abb8eebbc51d2dd20f632f0bc5d798fe4eae --- gio/gkdbus.c | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/gio/gkdbus.c b/gio/gkdbus.c index 35d58c9..7819fc3 100755 --- a/gio/gkdbus.c +++ b/gio/gkdbus.c @@ -3348,22 +3348,25 @@ _g_kdbus_send (GKDBusWorker *worker, #ifdef LIBDBUSPOLICY if (worker->dbuspolicy != NULL) { - gint check; - - check = dbuspolicy1_check_out (worker->dbuspolicy, - g_dbus_message_get_destination (message), - g_dbus_message_get_sender (message), - g_dbus_message_get_path (message), - g_dbus_message_get_interface (message), - g_dbus_message_get_member (message), - g_dbus_message_get_message_type (message), - NULL, 0, 0); - if (check != 1) + if (g_dbus_message_get_message_type (message) == G_DBUS_MESSAGE_TYPE_METHOD_CALL) { - g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_ACCESS_DENIED, - "Cannot send message - message rejected due to security policies"); - result = FALSE; - goto out; + gint check; + + check = dbuspolicy1_check_out (worker->dbuspolicy, + g_dbus_message_get_destination (message), + g_dbus_message_get_sender (message), + g_dbus_message_get_path (message), + g_dbus_message_get_interface (message), + g_dbus_message_get_member (message), + g_dbus_message_get_message_type (message), + NULL, 0, 0); + if (check != 1) + { + g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_ACCESS_DENIED, + "Cannot send message - message rejected due to security policies"); + result = FALSE; + goto out; + } } } #endif -- 2.7.4