]> xenbits.xensource.com Git - xen.git/commitdiff
flask: DOMCTL_soft_reset support
authorVitaly Kuznetsov <vkuznets@redhat.com>
Thu, 10 Sep 2015 14:54:48 +0000 (16:54 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 10 Sep 2015 14:54:48 +0000 (16:54 +0200)
Add new soft_reset vector to domain2 class, add it to create_domain
in the default policy.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Acked-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
tools/flask/policy/policy/modules/xen/xen.if
xen/xsm/flask/hooks.c
xen/xsm/flask/policy/access_vectors

index a2f25e1fbec2134ee16387428efbe8dc2cabf7c9..32dd7b39062c49e98528bd3b3c33e477067cdae1 100644 (file)
@@ -52,7 +52,7 @@ define(`create_domain_common', `
                        getaffinity setaffinity setvcpuextstate };
        allow $1 $2:domain2 { set_cpuid settsc setscheduler setclaim
                        set_max_evtchn set_vnumainfo get_vnumainfo cacheflush
-                       psr_cmt_op psr_cat_op };
+                       psr_cmt_op psr_cat_op soft_reset };
        allow $1 $2:security check_context;
        allow $1 $2:shadow enable;
        allow $1 $2:mmu { map_read map_write adjust memorymap physmap pinpage mmuext_op updatemp };
index fafb1a4ba14641db043c02f4b491d8b4922222e2..4180f3babd6449d85a49c8de4f5c55e0aa148d71 100644 (file)
@@ -738,6 +738,9 @@ static int flask_domctl(struct domain *d, int cmd)
     case XEN_DOMCTL_psr_cat_op:
         return current_has_perm(d, SECCLASS_DOMAIN2, DOMAIN2__PSR_CAT_OP);
 
+    case XEN_DOMCTL_soft_reset:
+        return current_has_perm(d, SECCLASS_DOMAIN2, DOMAIN2__SOFT_RESET);
+
     default:
         printk("flask_domctl: Unknown op %d\n", cmd);
         return -EPERM;
index 0aa68f81ae5aca10e55e84ef295bfad5f4248d20..effb59f8efbff72119fe1fc1e9a6debb46300759 100644 (file)
@@ -232,6 +232,8 @@ class domain2
 # XEN_DOMCTL_monitor_op
 # XEN_DOMCTL_vm_event_op
     vm_event
+# XEN_DOMCTL_soft_reset
+    soft_reset
 # XENMEM_access_op
     mem_access
 # XENMEM_paging_op