acm, xend: Fix resetting policy.

Fix a problem when resetting the policy and the label of Domain-0
needs to be renamed.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
This commit is contained in:
Keir Fraser committed 2008-01-30 14:23:17 +00:00
1 parent 458960ebe9
commit 17cbb242dc
2 files changed
+9 -4

No files matched your search

+2 -1
View File
@@ -337,7 +337,8 @@ class ACMPolicy(XSPolicy):
rc, errors = security.change_acm_policy(bin_pol,
del_array, chg_array,
vmlabel_map, reslabel_map,
self, acmpol_new)
self, acmpol_new,
acmpol_new.is_default_policy())
if rc == 0:
# Replace the old DOM with the new one and save it
+7 -3
View File
@@ -1342,7 +1342,8 @@ def relabel_domains(relabel_list):
def change_acm_policy(bin_pol, del_array, chg_array,
vmlabel_map, reslabel_map, cur_acmpol, new_acmpol):
vmlabel_map, reslabel_map, cur_acmpol, new_acmpol,
is_reset):
"""
Change the ACM policy of the system by relabeling
domains and resources first and doing some access checks.
@@ -1451,8 +1452,11 @@ def change_acm_policy(bin_pol, del_array, chg_array,
continue
new_vmlabel = vmlabel
if vmlabel_map.has_key(vmlabel):
# renaming of the label
if vmlabel_map.has_key(vmlabel) and \
(not is_reset or name == "Domain-0") :
# renaming of the label; this is only allowed if it's
# not a reset of the policy or if it is a reset, then
# only for Domain-0
new_vmlabel = vmlabel_map[vmlabel]
polname = new_policyname
elif new_vmlabel not in polnew_vmlabels and \
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.