mirror of
https://gitlab.com/apparmor/apparmor
synced 2025-10-09 13:46:31 +00:00
split get_profile_filename into .._from_profile_name and .._from_attachment
Split get_profile_filename() into - get_profile_filename_from_profile_name() (parameter: a profile name) - get_profile_filename_from_attachment() (parameter: an attachment) Currently both functions call get_profile_filename_orig() (formerly get_profile_filename()) so the behaviour doesn't change yet. The most important part of this commit is changing all get_profile_filename() calls to use one of the new functions to make clear if they specify a profile or an attachment/executable as parameter. As promised, the is_attachment parameter starts to get used in this patch ;-) Note: The get_new parameter (which I'll explain in the patch actually using it) is set to True in all calls to the new functions. The long term plan is to get rid of it in most cases (hence defaulting to False), but that will need more testing.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
# ----------------------------------------------------------------------
|
||||
# Copyright (C) 2013 Kshitij Gupta <kgupta8592@gmail.com>
|
||||
# Copyright (C) 2015-2018 Christian Boltz <apparmor@cboltz.de>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of version 2 of the GNU General Public
|
||||
@@ -66,12 +67,12 @@ class aa_tools:
|
||||
profile = fq_path
|
||||
else:
|
||||
program = fq_path
|
||||
profile = apparmor.get_profile_filename(fq_path)
|
||||
profile = apparmor.get_profile_filename_from_attachment(fq_path, True)
|
||||
else:
|
||||
which = apparmor.which(p)
|
||||
if which is not None:
|
||||
program = apparmor.get_full_path(which)
|
||||
profile = apparmor.get_profile_filename(program)
|
||||
profile = apparmor.get_profile_filename_from_attachment(program, True)
|
||||
elif os.path.exists(os.path.join(apparmor.profile_dir, p)):
|
||||
program = None
|
||||
profile = apparmor.get_full_path(os.path.join(apparmor.profile_dir, p)).strip()
|
||||
@@ -190,7 +191,7 @@ class aa_tools:
|
||||
|
||||
apparmor.check_qualifiers(program)
|
||||
|
||||
if os.path.exists(apparmor.get_profile_filename(program)) and not self.force:
|
||||
if os.path.exists(apparmor.get_profile_filename_from_attachment(program, True)) and not self.force:
|
||||
aaui.UI_Info(_('Profile for %s already exists - skipping.') % program)
|
||||
else:
|
||||
apparmor.autodep(program)
|
||||
@@ -198,7 +199,7 @@ class aa_tools:
|
||||
apparmor.reload(program)
|
||||
|
||||
def clean_profile(self, program):
|
||||
filename = apparmor.get_profile_filename(program)
|
||||
filename = apparmor.get_profile_filename_from_attachment(program, True)
|
||||
import apparmor.cleanprofile as cleanprofile
|
||||
prof = cleanprofile.Prof(filename)
|
||||
cleanprof = cleanprofile.CleanProf(True, prof, prof)
|
||||
|
Reference in New Issue
Block a user