Changed return value of smack_rule_set_remove() to void.
authorJarkko Sakkinen <ext-jarkko.2.sakkinen@nokia.com>
Sat, 27 Nov 2010 15:58:08 +0000 (07:58 -0800)
committerJarkko Sakkinen <ext-jarkko.2.sakkinen@nokia.com>
Sat, 27 Nov 2010 15:58:08 +0000 (07:58 -0800)
src/smack.h
src/smack_rules.c
tests/check_rules.c
tests/data/rule_set_attach_label_set_save_rules-excepted.txt [deleted file]

index 08c0bf8..586d7f4 100644 (file)
@@ -128,10 +128,9 @@ extern int smack_rule_set_add(SmackRuleSet handle, const char *subject,
  * @param handle handle to a rules
  * @param subject subject of the rule
  * @param object object of the rule
- * @return 0 if user was found from user db.
  */
-extern int smack_rule_set_remove(SmackRuleSet handle, const char *subject,
-                                const char *object);
+extern void smack_rule_set_remove(SmackRuleSet handle, const char *subject,
+                                 const char *object);
 
 /*!
  * Remove all rules with the given subject from a rule set.
@@ -160,7 +159,6 @@ extern void smack_rule_set_remove_by_object(SmackRuleSet handle,
  * @param access string defining access type
  * @return boolean value
  */
-
 extern int smack_rule_set_have_access(SmackRuleSet handle, const char *subject,
                                      const char *object, const char *access);
 
@@ -206,14 +204,14 @@ extern int smack_label_set_save_to_file(SmackLabelSet handle, const char *path);
  * @return pointer to the short name is returned when the operation is
  * succesful. Otherwise, NULL is returned.
  */
-extern const char *smack_label_set_add(SmackLabelSet handle, const char *long_name);
+extern const char *smack_label_set_add(SmackLabelSet handle,
+                                      const char *long_name);
 
 /*!
  * Remove a label from a label set.
  *
  * @param handle handle to a label set
  * @param long_name long label
- * @return 0 on success
  */
 extern void smack_label_set_remove(SmackLabelSet handle, const char *long_name);
 
index b4df4c2..7c02e98 100644 (file)
@@ -220,7 +220,7 @@ int smack_rule_set_add(SmackRuleSet handle, const char *subject,
        return ret == 0 ? 0  : -1;
 }
 
-int smack_rule_set_remove(SmackRuleSet handle, const char *subject,
+void smack_rule_set_remove(SmackRuleSet handle, const char *subject,
                          const char *object)
 {
        struct smack_subject *s = NULL;
@@ -231,20 +231,20 @@ int smack_rule_set_remove(SmackRuleSet handle, const char *subject,
                object = smack_label_set_to_short_name(handle->labels, object);
 
                if (subject == NULL || object == NULL)
-                       return -1;
+                       return;
        }
 
        HASH_FIND_STR(handle->subjects, subject, s);
        if (s == NULL)
-               return -1;
+               return;
 
        HASH_FIND_STR(s->objects, object, o);
        if (o == NULL)
-               return -1;
+               return;
 
        HASH_DEL(s->objects, o);
        free(o);
-       return 0;
+       return;
 }
 
 void smack_rule_set_remove_by_subject(SmackRuleSet handle, const char *subject)
index b71b24b..571887b 100644 (file)
@@ -92,8 +92,7 @@ START_TEST(test_remove_rule)
        int rc;
        SmackRuleSet rules = smack_rule_set_new_from_file("data/remove_rule-in.txt", NULL);
        fail_unless(rules != NULL, "Reading rules failed");
-       rc = smack_rule_set_remove(rules, "Orange", "Apple");
-       fail_unless(rc == 0, "Failed to remove rule");
+       smack_rule_set_remove(rules, "Orange", "Apple");
        rc = smack_rule_set_save_to_kernel(rules, "remove_rule-result.txt");
        fail_unless(rc == 0, "Failed to write ruleset");
        rc = files_equal("remove_rule-result.txt", "data/remove_rule-excepted.txt");
@@ -146,8 +145,7 @@ START_TEST(test_have_access_removed_rule)
        int rc;
        SmackRuleSet rules = smack_rule_set_new_from_file("data/have_access_rule-in.txt", "Orange");
        fail_unless(rules != NULL, "Reading rules failed");
-       rc = smack_rule_set_remove(rules, "Orange", "Apple");
-       fail_unless(rc == 0, "Failed to remove rule");
+       smack_rule_set_remove(rules, "Orange", "Apple");
        rc = smack_rule_set_have_access(rules, "Orange", "Apple", "a");
        fail_unless(!rc, "Has access to a removed rule");
        smack_rule_set_delete(rules);
@@ -157,6 +155,7 @@ END_TEST
 START_TEST(test_rule_set_attach_label_set_add_remove_rule)
 {
        int rc;
+       const char *sn;
 
        SmackRuleSet rules = smack_rule_set_new();
        fail_unless(rules != NULL, "Creating rule set failed");
@@ -166,44 +165,32 @@ START_TEST(test_rule_set_attach_label_set_add_remove_rule)
 
        smack_rule_set_attach_label_set(rules, labels);
 
-       rc = smack_label_set_add(labels, LONG_LABEL_1);
-       fail_unless(rc != 0, "Adding label was not succesful");
+       sn = smack_label_set_add(labels, LONG_LABEL_1);
+       fail_unless(sn != NULL, "Adding label was not succesful");
 
-       rc = smack_label_set_add(labels, LONG_LABEL_2);
-       fail_unless(rc != 0, "Adding label was not succesful");
+       sn = smack_label_set_add(labels, LONG_LABEL_2);
+       fail_unless(sn != NULL, "Adding label was not succesful");
 
        rc = smack_rule_set_add(rules, LONG_LABEL_1, LONG_LABEL_2, "rx");
        fail_unless(rc == 0, "Adding rule was not succesful");
 
-       rc = smack_rule_set_remove(rules, LONG_LABEL_1, LONG_LABEL_2);
-       fail_unless(rc == 0, "Removign rule was not succesful");
-
-       smack_rule_set_delete(rules);
-       smack_label_set_delete(labels);
-}
-END_TEST
-
-START_TEST(test_rule_set_attach_label_set_add_rule_no_labels)
-{
-       int rc;
-
-       SmackRuleSet rules = smack_rule_set_new();
-       fail_unless(rules != NULL, "Creating rule set failed");
+       rc = smack_rule_set_add(rules, LONG_LABEL_2, LONG_LABEL_1, "rwa");
+       fail_unless(rc == 0, "Adding rule was not succesful");
 
-       SmackLabelSet labels = smack_label_set_new();
-       fail_unless(labels != NULL, "Creating label set failed");
+       smack_rule_set_remove(rules, LONG_LABEL_1, LONG_LABEL_2);
 
-       smack_rule_set_attach_label_set(rules, labels);
+       rc = smack_rule_set_have_access(rules, LONG_LABEL_2, LONG_LABEL_1, "a");
+       fail_unless(rc, "Access failure");
 
-       rc = smack_rule_set_add(rules, LONG_LABEL_1, LONG_LABEL_2, "rx");
-       fail_unless(rc != 0, "Adding rule was succesful");
+       rc = smack_rule_set_have_access(rules, LONG_LABEL_1, LONG_LABEL_2, "r");
+       fail_unless(!rc, "Access failure");
 
        smack_rule_set_delete(rules);
        smack_label_set_delete(labels);
 }
 END_TEST
 
-START_TEST(test_rule_set_attach_label_set_save_rules)
+START_TEST(test_rule_set_attach_label_set_add_rule_no_labels)
 {
        int rc;
 
@@ -215,21 +202,8 @@ START_TEST(test_rule_set_attach_label_set_save_rules)
 
        smack_rule_set_attach_label_set(rules, labels);
 
-       rc = smack_label_set_add(labels, LONG_LABEL_1);
-       fail_unless(rc != 0, "Adding label was not succesful");
-
-       rc = smack_label_set_add(labels, LONG_LABEL_2);
-       fail_unless(rc != 0, "Adding label was not succesful");
-
        rc = smack_rule_set_add(rules, LONG_LABEL_1, LONG_LABEL_2, "rx");
-       fail_unless(rc == 0, "Adding rule was not succesful");
-
-       rc = smack_rule_set_save_to_file(rules, "rule_set_attach_label_set_save_rules-result.txt");
-       fail_unless(rc == 0, "Saving rule set was not succesful");
-
-       rc = files_equal("rule_set_attach_label_set_save_rules-result.txt",
-                        "data/rule_set_attach_label_set_save_rules-excepted.txt");
-       fail_unless(rc == 1, "Unexcepted result");
+       fail_unless(rc != 0, "Adding rule was succesful");
 
        smack_rule_set_delete(rules);
        smack_label_set_delete(labels);
@@ -255,7 +229,6 @@ Suite *ruleset_suite (void)
        tcase_add_test(tc_core, test_have_access_removed_rule);
        tcase_add_test(tc_core, test_rule_set_attach_label_set_add_remove_rule);
        tcase_add_test(tc_core, test_rule_set_attach_label_set_add_rule_no_labels);
-       tcase_add_test(tc_core, test_rule_set_attach_label_set_save_rules);
        suite_add_tcase(s, tc_core);
 
        return s;
diff --git a/tests/data/rule_set_attach_label_set_save_rules-excepted.txt b/tests/data/rule_set_attach_label_set_save_rules-excepted.txt
deleted file mode 100644 (file)
index 6abe972..0000000
+++ /dev/null
@@ -1 +0,0 @@
-ooFooFooFooFooFooFooFoo arBarBarBarBarBarBarBar rx