aboutsummaryrefslogtreecommitdiff
path: root/security/selinux/hooks.c
diff options
context:
space:
mode:
authorKukjin Kim <kgene.kim@samsung.com>2012-11-19 13:18:47 +0900
committerKukjin Kim <kgene.kim@samsung.com>2012-11-19 13:18:47 +0900
commit326f3abf19360014dfae968aa3ab891d25599618 (patch)
treea57251231cb889e4e6b0f26d023990578b7bd98e /security/selinux/hooks.c
parentef405e04abd0d4bc3f7082d241517f6db3f5c06d (diff)
parent64a574344dadbee5d01819d9d73b594d3cbe448e (diff)
Merge branch 'next/dt-exynos4x12' into next/dt-samsung
Conflicts: arch/arm/boot/dts/exynos4210.dtsi
Diffstat (limited to 'security/selinux/hooks.c')
-rw-r--r--security/selinux/hooks.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c
index 24ab4148547..61a53367d02 100644
--- a/security/selinux/hooks.c
+++ b/security/selinux/hooks.c
@@ -2132,18 +2132,14 @@ static inline void flush_unauthorized_files(const struct cred *cred,
return;
devnull = dentry_open(&selinux_null, O_RDWR, cred);
- if (!IS_ERR(devnull)) {
- /* replace all the matching ones with this */
- do {
- replace_fd(n - 1, get_file(devnull), 0);
- } while ((n = iterate_fd(files, n, match_file, cred)) != 0);
+ if (IS_ERR(devnull))
+ devnull = NULL;
+ /* replace all the matching ones with this */
+ do {
+ replace_fd(n - 1, devnull, 0);
+ } while ((n = iterate_fd(files, n, match_file, cred)) != 0);
+ if (devnull)
fput(devnull);
- } else {
- /* just close all the matching ones */
- do {
- replace_fd(n - 1, NULL, 0);
- } while ((n = iterate_fd(files, n, match_file, cred)) != 0);
- }
}
/*