Lines Matching refs:op
37 int xc_flask_op(xc_interface *xch, xen_flask_op_t *op) in xc_flask_op() argument
40 DECLARE_HYPERCALL_BOUNCE(op, sizeof(*op), XC_HYPERCALL_BUFFER_BOUNCE_BOTH); in xc_flask_op()
42 op->interface_version = XEN_FLASK_INTERFACE_VERSION; in xc_flask_op()
44 if ( xc_hypercall_bounce_pre(xch, op) ) in xc_flask_op()
51 HYPERCALL_BUFFER_AS_ARG(op)); in xc_flask_op()
58 xc_hypercall_bounce_post(xch, op); in xc_flask_op()
75 op.cmd = FLASK_LOAD; in xc_flask_load()
76 op.u.load.size = size; in xc_flask_load()
77 set_xen_guest_handle(op.u.load.buffer, buf); in xc_flask_load()
79 err = xc_flask_op(xch, &op); in xc_flask_load()
98 op.cmd = FLASK_CONTEXT_TO_SID; in xc_flask_context_to_sid()
99 op.u.sid_context.size = size; in xc_flask_context_to_sid()
100 set_xen_guest_handle(op.u.sid_context.context, buf); in xc_flask_context_to_sid()
102 err = xc_flask_op(xch, &op); in xc_flask_context_to_sid()
105 *sid = op.u.sid_context.sid; in xc_flask_context_to_sid()
124 op.cmd = FLASK_SID_TO_CONTEXT; in xc_flask_sid_to_context()
125 op.u.sid_context.sid = sid; in xc_flask_sid_to_context()
126 op.u.sid_context.size = size; in xc_flask_sid_to_context()
127 set_xen_guest_handle(op.u.sid_context.context, buf); in xc_flask_sid_to_context()
129 err = xc_flask_op(xch, &op); in xc_flask_sid_to_context()
139 op.cmd = FLASK_GETENFORCE; in xc_flask_getenforce()
141 return xc_flask_op(xch, &op); in xc_flask_getenforce()
147 op.cmd = FLASK_SETENFORCE; in xc_flask_setenforce()
148 op.u.enforce.enforcing = mode; in xc_flask_setenforce()
150 return xc_flask_op(xch, &op); in xc_flask_setenforce()
165 op.cmd = FLASK_GETBOOL; in xc_flask_getbool_byid()
166 op.u.boolean.bool_id = id; in xc_flask_getbool_byid()
167 op.u.boolean.size = size; in xc_flask_getbool_byid()
168 set_xen_guest_handle(op.u.boolean.name, name); in xc_flask_getbool_byid()
170 rv = xc_flask_op(xch, &op); in xc_flask_getbool_byid()
178 *curr = op.u.boolean.enforcing; in xc_flask_getbool_byid()
180 *pend = op.u.boolean.pending; in xc_flask_getbool_byid()
197 op.cmd = FLASK_GETBOOL; in xc_flask_getbool_byname()
198 op.u.boolean.bool_id = -1; in xc_flask_getbool_byname()
199 op.u.boolean.size = strlen(name); in xc_flask_getbool_byname()
200 set_xen_guest_handle(op.u.boolean.name, name); in xc_flask_getbool_byname()
202 rv = xc_flask_op(xch, &op); in xc_flask_getbool_byname()
210 *curr = op.u.boolean.enforcing; in xc_flask_getbool_byname()
212 *pend = op.u.boolean.pending; in xc_flask_getbool_byname()
229 op.cmd = FLASK_SETBOOL; in xc_flask_setbool()
230 op.u.boolean.bool_id = -1; in xc_flask_setbool()
231 op.u.boolean.new_value = value; in xc_flask_setbool()
232 op.u.boolean.commit = 1; in xc_flask_setbool()
233 op.u.boolean.size = strlen(name); in xc_flask_setbool()
234 set_xen_guest_handle(op.u.boolean.name, name); in xc_flask_setbool()
236 rv = xc_flask_op(xch, &op); in xc_flask_setbool()
254 op.cmd = FLASK_ADD_OCONTEXT; in xc_flask_add()
255 op.u.ocontext.ocon = ocon; in xc_flask_add()
256 op.u.ocontext.sid = sid; in xc_flask_add()
257 op.u.ocontext.low = low; in xc_flask_add()
258 op.u.ocontext.high = high; in xc_flask_add()
260 return xc_flask_op(xch, &op); in xc_flask_add()
289 op.cmd = FLASK_DEL_OCONTEXT; in xc_flask_del()
290 op.u.ocontext.ocon = ocon; in xc_flask_del()
291 op.u.ocontext.low = low; in xc_flask_del()
292 op.u.ocontext.high = high; in xc_flask_del()
294 return xc_flask_op(xch, &op); in xc_flask_del()
326 err = xc_flask_context_to_sid(xch, (char*)scon, strlen(scon), &op.u.access.ssid); in xc_flask_access()
329 err = xc_flask_context_to_sid(xch, (char*)tcon, strlen(tcon), &op.u.access.tsid); in xc_flask_access()
333 op.cmd = FLASK_ACCESS; in xc_flask_access()
334 op.u.access.tclass = tclass; in xc_flask_access()
335 op.u.access.req = req; in xc_flask_access()
337 err = xc_flask_op(xch, &op); in xc_flask_access()
343 *allowed = op.u.access.allowed; in xc_flask_access()
347 *auditallow = op.u.access.audit_allow; in xc_flask_access()
349 *auditdeny = op.u.access.audit_deny; in xc_flask_access()
351 *seqno = op.u.access.seqno; in xc_flask_access()
353 if ( (op.u.access.allowed & req) != req ) in xc_flask_access()
364 op.cmd = FLASK_AVC_HASHSTATS; in xc_flask_avc_hashstats()
366 err = xc_flask_op(xch, &op); in xc_flask_avc_hashstats()
370 op.u.hash_stats.entries, op.u.hash_stats.buckets_used, in xc_flask_avc_hashstats()
371 op.u.hash_stats.buckets_total, op.u.hash_stats.max_chain_len); in xc_flask_avc_hashstats()
386 op.cmd = FLASK_AVC_CACHESTATS; in xc_flask_avc_cachestats()
389 op.u.cache_stats.cpu = i; in xc_flask_avc_cachestats()
390 err = xc_flask_op(xch, &op); in xc_flask_avc_cachestats()
396 op.u.cache_stats.lookups, op.u.cache_stats.hits, in xc_flask_avc_cachestats()
397 op.u.cache_stats.misses, op.u.cache_stats.allocations, in xc_flask_avc_cachestats()
398 op.u.cache_stats.reclaims, op.u.cache_stats.frees); in xc_flask_avc_cachestats()
410 op.cmd = FLASK_POLICYVERS; in xc_flask_policyvers()
412 return xc_flask_op(xch, &op); in xc_flask_policyvers()
418 op.cmd = FLASK_GETAVC_THRESHOLD; in xc_flask_getavc_threshold()
420 return xc_flask_op(xch, &op); in xc_flask_getavc_threshold()
426 op.cmd = FLASK_SETAVC_THRESHOLD; in xc_flask_setavc_threshold()
427 op.u.setavc_threshold.threshold = threshold; in xc_flask_setavc_threshold()
429 return xc_flask_op(xch, &op); in xc_flask_setavc_threshold()
435 op.cmd = FLASK_RELABEL_DOMAIN; in xc_flask_relabel_domain()
436 op.u.relabel.domid = domid; in xc_flask_relabel_domain()
437 op.u.relabel.sid = sid; in xc_flask_relabel_domain()
439 return xc_flask_op(xch, &op); in xc_flask_relabel_domain()