diff options
Diffstat (limited to 'security')
-rw-r--r-- | security/tomoyo/util.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/security/tomoyo/util.c b/security/tomoyo/util.c index 867558c98334..2952ba576fb9 100644 --- a/security/tomoyo/util.c +++ b/security/tomoyo/util.c | |||
@@ -949,18 +949,13 @@ bool tomoyo_path_matches_pattern(const struct tomoyo_path_info *filename, | |||
949 | const char *tomoyo_get_exe(void) | 949 | const char *tomoyo_get_exe(void) |
950 | { | 950 | { |
951 | struct mm_struct *mm = current->mm; | 951 | struct mm_struct *mm = current->mm; |
952 | struct vm_area_struct *vma; | ||
953 | const char *cp = NULL; | 952 | const char *cp = NULL; |
954 | 953 | ||
955 | if (!mm) | 954 | if (!mm) |
956 | return NULL; | 955 | return NULL; |
957 | down_read(&mm->mmap_sem); | 956 | down_read(&mm->mmap_sem); |
958 | for (vma = mm->mmap; vma; vma = vma->vm_next) { | 957 | if (mm->exe_file) |
959 | if ((vma->vm_flags & VM_EXECUTABLE) && vma->vm_file) { | 958 | cp = tomoyo_realpath_from_path(&mm->exe_file->f_path); |
960 | cp = tomoyo_realpath_from_path(&vma->vm_file->f_path); | ||
961 | break; | ||
962 | } | ||
963 | } | ||
964 | up_read(&mm->mmap_sem); | 959 | up_read(&mm->mmap_sem); |
965 | return cp; | 960 | return cp; |
966 | } | 961 | } |