Lines 942-950
bus_client_policy_check_can_send (BusClientPolicy *policy,
Link Here
|
942 |
|
942 |
|
943 |
if (rule->d.send.interface != NULL) |
943 |
if (rule->d.send.interface != NULL) |
944 |
{ |
944 |
{ |
945 |
if (dbus_message_get_interface (message) != NULL && |
945 |
/* The interface is optional in messages. For allow rules, if the message |
946 |
strcmp (dbus_message_get_interface (message), |
946 |
* has no interface we want to skip the rule (and thus not allow); |
947 |
rule->d.send.interface) != 0) |
947 |
* for deny rules, if the message has no interface we want to use the |
|
|
948 |
* rule (and thus deny). |
949 |
*/ |
950 |
dbus_bool_t no_interface; |
951 |
|
952 |
no_interface = dbus_message_get_interface (message) == NULL; |
953 |
|
954 |
if ((no_interface && rule->allow) || |
955 |
(!no_interface && |
956 |
strcmp (dbus_message_get_interface (message), |
957 |
rule->d.send.interface) != 0)) |
948 |
{ |
958 |
{ |
949 |
_dbus_verbose (" (policy) skipping rule for different interface\n"); |
959 |
_dbus_verbose (" (policy) skipping rule for different interface\n"); |
950 |
continue; |
960 |
continue; |
Lines 1128-1136
bus_client_policy_check_can_receive (BusClientPolicy *policy,
Link Here
|
1128 |
|
1138 |
|
1129 |
if (rule->d.receive.interface != NULL) |
1139 |
if (rule->d.receive.interface != NULL) |
1130 |
{ |
1140 |
{ |
1131 |
if (dbus_message_get_interface (message) != NULL && |
1141 |
/* The interface is optional in messages. For allow rules, if the message |
1132 |
strcmp (dbus_message_get_interface (message), |
1142 |
* has no interface we want to skip the rule (and thus not allow); |
1133 |
rule->d.receive.interface) != 0) |
1143 |
* for deny rules, if the message has no interface we want to use the |
|
|
1144 |
* rule (and thus deny). |
1145 |
*/ |
1146 |
dbus_bool_t no_interface; |
1147 |
|
1148 |
no_interface = dbus_message_get_interface (message) == NULL; |
1149 |
|
1150 |
if ((no_interface && rule->allow) || |
1151 |
(!no_interface && |
1152 |
strcmp (dbus_message_get_interface (message), |
1153 |
rule->d.receive.interface) != 0)) |
1134 |
{ |
1154 |
{ |
1135 |
_dbus_verbose (" (policy) skipping rule for different interface\n"); |
1155 |
_dbus_verbose (" (policy) skipping rule for different interface\n"); |
1136 |
continue; |
1156 |
continue; |