diff options
| author | Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> | 2009-06-18 21:29:34 -0400 |
|---|---|---|
| committer | James Morris <jmorris@namei.org> | 2009-06-18 21:32:37 -0400 |
| commit | ccf135f509abdbf607e9a68f08ddeee2c66dc36e (patch) | |
| tree | 4641f30dc45901b619a86957efc72fd3d8d46228 /security | |
| parent | d905163c5b23f6d8511971e06081a1b525e8a0bd (diff) | |
TOMOYO: Move tomoyo_delete_domain().
We can mark tomoyo_delete_domain() as a "static" function
by moving it from domain.c to common.c .
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'security')
| -rw-r--r-- | security/tomoyo/common.c | 30 | ||||
| -rw-r--r-- | security/tomoyo/common.h | 2 | ||||
| -rw-r--r-- | security/tomoyo/domain.c | 32 |
3 files changed, 30 insertions, 34 deletions
diff --git a/security/tomoyo/common.c b/security/tomoyo/common.c index fdd1f4b8c448..3c8bd8ee0b95 100644 --- a/security/tomoyo/common.c +++ b/security/tomoyo/common.c | |||
| @@ -1285,6 +1285,36 @@ static bool tomoyo_is_select_one(struct tomoyo_io_buffer *head, | |||
| 1285 | } | 1285 | } |
| 1286 | 1286 | ||
| 1287 | /** | 1287 | /** |
| 1288 | * tomoyo_delete_domain - Delete a domain. | ||
| 1289 | * | ||
| 1290 | * @domainname: The name of domain. | ||
| 1291 | * | ||
| 1292 | * Returns 0. | ||
| 1293 | */ | ||
| 1294 | static int tomoyo_delete_domain(char *domainname) | ||
| 1295 | { | ||
| 1296 | struct tomoyo_domain_info *domain; | ||
| 1297 | struct tomoyo_path_info name; | ||
| 1298 | |||
| 1299 | name.name = domainname; | ||
| 1300 | tomoyo_fill_path_info(&name); | ||
| 1301 | down_write(&tomoyo_domain_list_lock); | ||
| 1302 | /* Is there an active domain? */ | ||
| 1303 | list_for_each_entry(domain, &tomoyo_domain_list, list) { | ||
| 1304 | /* Never delete tomoyo_kernel_domain */ | ||
| 1305 | if (domain == &tomoyo_kernel_domain) | ||
| 1306 | continue; | ||
| 1307 | if (domain->is_deleted || | ||
| 1308 | tomoyo_pathcmp(domain->domainname, &name)) | ||
| 1309 | continue; | ||
| 1310 | domain->is_deleted = true; | ||
| 1311 | break; | ||
| 1312 | } | ||
| 1313 | up_write(&tomoyo_domain_list_lock); | ||
| 1314 | return 0; | ||
| 1315 | } | ||
| 1316 | |||
| 1317 | /** | ||
| 1288 | * tomoyo_write_domain_policy - Write domain policy. | 1318 | * tomoyo_write_domain_policy - Write domain policy. |
| 1289 | * | 1319 | * |
| 1290 | * @head: Pointer to "struct tomoyo_io_buffer". | 1320 | * @head: Pointer to "struct tomoyo_io_buffer". |
diff --git a/security/tomoyo/common.h b/security/tomoyo/common.h index 6d6ba09af457..31df541911f7 100644 --- a/security/tomoyo/common.h +++ b/security/tomoyo/common.h | |||
| @@ -339,8 +339,6 @@ const char *tomoyo_get_last_name(const struct tomoyo_domain_info *domain); | |||
| 339 | const char *tomoyo_get_msg(const bool is_enforce); | 339 | const char *tomoyo_get_msg(const bool is_enforce); |
| 340 | /* Convert single path operation to operation name. */ | 340 | /* Convert single path operation to operation name. */ |
| 341 | const char *tomoyo_sp2keyword(const u8 operation); | 341 | const char *tomoyo_sp2keyword(const u8 operation); |
| 342 | /* Delete a domain. */ | ||
| 343 | int tomoyo_delete_domain(char *data); | ||
| 344 | /* Create "alias" entry in exception policy. */ | 342 | /* Create "alias" entry in exception policy. */ |
| 345 | int tomoyo_write_alias_policy(char *data, const bool is_delete); | 343 | int tomoyo_write_alias_policy(char *data, const bool is_delete); |
| 346 | /* | 344 | /* |
diff --git a/security/tomoyo/domain.c b/security/tomoyo/domain.c index 1d8b16960576..e68b1052354b 100644 --- a/security/tomoyo/domain.c +++ b/security/tomoyo/domain.c | |||
| @@ -717,38 +717,6 @@ int tomoyo_write_alias_policy(char *data, const bool is_delete) | |||
| 717 | return tomoyo_update_alias_entry(data, cp, is_delete); | 717 | return tomoyo_update_alias_entry(data, cp, is_delete); |
| 718 | } | 718 | } |
| 719 | 719 | ||
| 720 | /* Domain create/delete handler. */ | ||
| 721 | |||
| 722 | /** | ||
| 723 | * tomoyo_delete_domain - Delete a domain. | ||
| 724 | * | ||
| 725 | * @domainname: The name of domain. | ||
| 726 | * | ||
| 727 | * Returns 0. | ||
| 728 | */ | ||
| 729 | int tomoyo_delete_domain(char *domainname) | ||
| 730 | { | ||
| 731 | struct tomoyo_domain_info *domain; | ||
| 732 | struct tomoyo_path_info name; | ||
| 733 | |||
| 734 | name.name = domainname; | ||
| 735 | tomoyo_fill_path_info(&name); | ||
| 736 | down_write(&tomoyo_domain_list_lock); | ||
| 737 | /* Is there an active domain? */ | ||
| 738 | list_for_each_entry(domain, &tomoyo_domain_list, list) { | ||
| 739 | /* Never delete tomoyo_kernel_domain */ | ||
| 740 | if (domain == &tomoyo_kernel_domain) | ||
| 741 | continue; | ||
| 742 | if (domain->is_deleted || | ||
| 743 | tomoyo_pathcmp(domain->domainname, &name)) | ||
| 744 | continue; | ||
| 745 | domain->is_deleted = true; | ||
| 746 | break; | ||
| 747 | } | ||
| 748 | up_write(&tomoyo_domain_list_lock); | ||
| 749 | return 0; | ||
| 750 | } | ||
| 751 | |||
| 752 | /** | 720 | /** |
| 753 | * tomoyo_find_or_assign_new_domain - Create a domain. | 721 | * tomoyo_find_or_assign_new_domain - Create a domain. |
| 754 | * | 722 | * |
