From e7accd4fc173ab29e93513128502989fb4d54782 Mon Sep 17 00:00:00 2001 From: Jarkko Sakkinen Date: Sat, 27 Nov 2010 07:58:08 -0800 Subject: [PATCH] Changed return value of smack_rule_set_remove() to void. --- src/smack.h | 10 ++-- src/smack_rules.c | 10 ++-- tests/check_rules.c | 59 ++++++---------------- ...le_set_attach_label_set_save_rules-excepted.txt | 1 - 4 files changed, 25 insertions(+), 55 deletions(-) delete mode 100644 tests/data/rule_set_attach_label_set_save_rules-excepted.txt diff --git a/src/smack.h b/src/smack.h index 08c0bf8..586d7f4 100644 --- a/src/smack.h +++ b/src/smack.h @@ -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); diff --git a/src/smack_rules.c b/src/smack_rules.c index b4df4c2..7c02e98 100644 --- a/src/smack_rules.c +++ b/src/smack_rules.c @@ -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) diff --git a/tests/check_rules.c b/tests/check_rules.c index b71b24b..571887b 100644 --- a/tests/check_rules.c +++ b/tests/check_rules.c @@ -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 index 6abe972..0000000 --- a/tests/data/rule_set_attach_label_set_save_rules-excepted.txt +++ /dev/null @@ -1 +0,0 @@ -ooFooFooFooFooFooFooFoo arBarBarBarBarBarBarBar rx -- 2.7.4