31#include <l4/sys/cxx/ipc_array>
32#include <l4/sys/cxx/ipc_string>
61 public L4::Kobject_t<Namespace, L4::Kobject, L4RE_PROTO_NAMESPACE,
62 L4::Type_info::Demand_t<1> >
77 Cap_flags = Ro | Rw | Strong | Trusted,
90 Partly_resolved = 0x020,
132 int timeout = To_default,
133 l4_umword_t *local_id = 0,
bool iterate =
true) const noexcept;
144 long query(
char const *name,
unsigned len,
L4::Cap<
void> const &cap,
145 int timeout = To_default,
146 l4_umword_t *local_id = 0,
bool iterate = true) const noexcept;
148 L4_RPC_NF(
long, register_obj, (
unsigned flags,
149 L4::Ipc::Array<
char const,
unsigned long> name,
150 L4::Ipc::Opt<
L4::Ipc::Cap<
void> > obj),
176 long register_obj(
char const *name,
L4::Ipc::Cap<
void> obj,
177 unsigned flags = Rw) const noexcept
179 return register_obj_t::call(c(), flags,
181 __builtin_strlen(name), name),
206 __builtin_strlen(name), name));
212 long _query(
char const *name,
unsigned len,
214 bool iterate)
const noexcept;
L4::Cap related definitions.
Query_result_flags
Flags returned by query IPC, only used internally.
long unlink(char const *name)
Remove an entry from the name space.
Register_flags
Flags for registering name spaces.
Query_timeout
Timeout values for query operation.
C++ interface for capabilities.
A receive item for receiving a single object capability.
Helper class to create an L4Re interface class that is derived from a single base class.
unsigned long l4_umword_t
Unsigned machine word.
@ L4_CAP_FPAGE_RO
Read right for capability flex-pages.
@ L4_CAP_FPAGE_RW
Read and interface specific 'W' right for capability flex-pages.
@ L4_CAP_FPAGE_W
Interface specific 'W' right for capability flex-pages.
@ L4_CAP_FPAGE_RS
Read and interface specific 'S' right for capability flex-pages.
@ L4_CAP_FPAGE_RWS
Read, interface specific 'W', and 'S' rights for capability flex-pages.
@ L4_CAP_FPAGE_S
Interface specific 'S' right for capability flex-pages.
#define L4_EXPORT
Attribute to mark functions, variables, and data types as being exported from a library.
Interface Definition Language.
#define L4_RPC_NF_OP(op, res, name, args...)
Define an RPC call type with specific opcode (the type only, no callable).
#define L4_RPC_NF(res, name, args...)
Define an RPC call type (the type only, no callable).
L4 low-level kernel interface.
L4Re Protocol Constants (C version)
Array reference data type for arrays located in the message.
Array data type for dynamically sized arrays in RPCs.
RPC attribute for an RPC call with required rights.
Attribute for defining an optional RPC argument.
Standard list of RPCs of an interface.