Add dbus tests for send member check 04/35304/6
authorMarcin Niesluchowski <m.niesluchow@samsung.com>
Wed, 11 Feb 2015 16:57:48 +0000 (17:57 +0100)
committerZbigniew Jasinski <z.jasinski@samsung.com>
Wed, 22 Apr 2015 12:13:12 +0000 (05:13 -0700)
* tcc_2530_send_member_deny
    Check for send member created in conf file. Not granted for client
    sending message with member.
* tcc_2570_send_member_allow
    Check for send member created in conf file. Granted for client sending
    message with member.

Change-Id: I7127ae6433ade0354776e6151ff1662e4cc51e28

tests/dbus-tests/cynara_dbus_tests.cpp

index 338bf88240396b7ecf5fade2235b9f3bba191d1e..0fdb872851a60c4426594b787c3574c4e162fd70 100644 (file)
@@ -332,3 +332,26 @@ RUNNER_MULTIPROCESS_TEST_SMACK(tcc_2470_send_type_allow)
 {
     testSend("tcc2470", addBusconfigPolicySendType, true);
 }
+
+static void addBusconfigPolicySendMember(const std::string &testId)
+{
+    const std::string serviceId = serviceIdFromStr(testId);
+    const ServiceCreds serviceCreds(serviceId);
+    BusConfigWriter writer;
+    addBusconfigPolicySendAllows(writer);
+    writer.addPolicyCheck(privilegeFromStr(clientIdFromStr(testId)),
+                          {{Attr::SEND_DESTINATION, serviceCreds.connectionName()},
+                           {Attr::SEND_INTERFACE, serviceCreds.interface()},
+                           {Attr::SEND_MEMBER, memberFromStr(serviceId)}});
+    writer.save();
+}
+
+RUNNER_MULTIPROCESS_TEST_SMACK(tcc_2530_send_member_deny)
+{
+    testSend("tcc2530", addBusconfigPolicySendMember, false);
+}
+
+RUNNER_MULTIPROCESS_TEST_SMACK(tcc_2570_send_member_allow)
+{
+    testSend("tcc2570", addBusconfigPolicySendMember, true);
+}