27#include <l4/sys/task.h>
45 public Kobject_t<Task, Kobject, L4_PROTO_TASK,
46 Type_info::Demand_t<2> >
98 {
return l4_task_map_u(
cap(), src_task.
cap(), snd_fpage, snd_base, utcb); }
126 {
return l4_task_unmap_u(
cap(), fpage, map_mask, utcb); }
146 {
return l4_task_unmap_batch_u(
cap(), fpages, num_fpages, map_mask, utcb); }
170 {
return l4_task_delete_obj_u(
cap(), obj.
cap(), utcb); }
189 {
return l4_task_release_cap_u(this->
cap(), cap.
cap(), utcb); }
210 {
return l4_task_cap_valid_u(this->
cap(), cap.
cap(), utcb); }
228 {
return l4_task_cap_equal_u(
cap(), cap_a.
cap(), cap_b.
cap(), utcb); }
257 {
return l4_task_add_ku_mem_u(
cap(), fpage, utcb); }
L4::Cap related definitions.
l4_cap_idx_t cap() const noexcept
Return capability selector.
C++ interface for capabilities.
Helper class to create an L4Re interface class that is derived from a single base class.
l4_cap_idx_t cap() const noexcept
Return capability selector.
C++ interface of the Task kernel object, see Task for the C interface.
l4_msgtag_t map(Cap< Task > const &src_task, l4_fpage_t const &snd_fpage, l4_umword_t snd_base, l4_utcb_t *utcb=l4_utcb()) noexcept
Map resources available in the source task to a destination task.
l4_msgtag_t unmap(l4_fpage_t const &fpage, l4_umword_t map_mask, l4_utcb_t *utcb=l4_utcb()) noexcept
Revoke rights from the task.
l4_msgtag_t delete_obj(L4::Cap< void > obj, l4_utcb_t *utcb=l4_utcb()) noexcept
Release capability and delete object.
l4_msgtag_t release_cap(L4::Cap< void > cap, l4_utcb_t *utcb=l4_utcb()) noexcept
Release object capability.
l4_msgtag_t add_ku_mem(l4_fpage_t *fpage, l4_utcb_t *utcb=l4_utcb()) noexcept
Add kernel-user memory.
l4_msgtag_t unmap_batch(l4_fpage_t const *fpages, unsigned num_fpages, l4_umword_t map_mask, l4_utcb_t *utcb=l4_utcb()) noexcept
Revoke rights from a task.
l4_msgtag_t cap_valid(Cap< void > const &cap, l4_utcb_t *utcb=l4_utcb()) noexcept
Check whether a capability is present (refers to an object).
l4_msgtag_t cap_equal(Cap< void > const &cap_a, Cap< void > const &cap_b, l4_utcb_t *utcb=l4_utcb()) noexcept
Test whether two capabilities point to the same object with the same rights.
unsigned long l4_umword_t
Unsigned machine word.
struct l4_utcb_t l4_utcb_t
Opaque type for the UTCB.
l4_utcb_t * l4_utcb(void) L4_NOTHROW L4_PURE
Get the UTCB address.
L4 low-level kernel interface.
Message tag data structure.