List of all members.
Public Types |
enum | {
TYPE_INVALID = 0,
TYPE_OPEN,
TYPE_CLOSE,
TYPE_GENERIC_END,
TYPE_GET_PORTAL,
TYPE_REGISTER,
TYPE_UNREGISTER,
TYPE_GET_QUOTA,
TYPE_SINGLETON,
TYPE_REQ_KILL,
CAP_CHILD_EC = 253,
CAP_CHILD_ID = 254,
CAP_PARENT_ID = 255,
CAP_PT_PERCPU = 256
} |
Static Public Member Functions |
static Utcb & | init_frame (Utcb &utcb, unsigned op, unsigned id) |
static unsigned | call (Utcb &utcb, unsigned cap_base, bool drop_frame, bool base=true) |
| Low-level systemcall.
|
static unsigned | get_pseudonym (Utcb &utcb, const char *service, unsigned instance, unsigned cap_pseudonym, unsigned parent_id=CAP_PARENT_ID) |
static unsigned | release_pseudonym (Utcb &utcb, unsigned cap_pseudonym) |
static unsigned | get_portal (Utcb &utcb, unsigned cap_pseudonym, unsigned cap_portal, bool blocking) |
static unsigned | register_service (Utcb &utcb, const char *service, unsigned cpu, unsigned pt, unsigned cap_service, char *revoke_mem=0) |
static unsigned | unregister_service (Utcb &utcb, unsigned cap_service) |
static unsigned | get_quota (Utcb &utcb, unsigned cap_client_pseudonym, const char *name, long invalue, long *outvalue=0) |
static unsigned | set_singleton (Utcb &utcb, unsigned cap_client_pseudonym, unsigned cap_local_session) |
static unsigned | check_singleton (Utcb &utcb, unsigned cap_client_pseudonym, unsigned &cap_local_session, Crd crd=Crd(0, 31, DESC_CAP_ALL)) |
static unsigned | kill (Utcb &utcb, unsigned cap_client_pseudonym, unsigned service_cap=0) |
Detailed Description
The protocol our parent provides.
It allows to open a new session and request per-CPU-portals.
Missing: restrict quota, get_quota
Member Enumeration Documentation
- Enumerator:
TYPE_INVALID |
|
TYPE_OPEN |
|
TYPE_CLOSE |
|
TYPE_GENERIC_END |
|
TYPE_GET_PORTAL |
|
TYPE_REGISTER |
|
TYPE_UNREGISTER |
|
TYPE_GET_QUOTA |
|
TYPE_SINGLETON |
|
TYPE_REQ_KILL |
|
CAP_CHILD_EC |
|
CAP_CHILD_ID |
|
CAP_PARENT_ID |
|
CAP_PT_PERCPU |
|
Member Function Documentation
static unsigned ParentProtocol::call |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_base, |
|
|
bool |
drop_frame, |
|
|
bool |
base = true | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::check_singleton |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_client_pseudonym, |
|
|
unsigned & |
cap_local_session, |
|
|
Crd |
crd = Crd(0, 31, DESC_CAP_ALL) | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::get_portal |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_pseudonym, |
|
|
unsigned |
cap_portal, |
|
|
bool |
blocking | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::get_pseudonym |
( |
Utcb & |
utcb, |
|
|
const char * |
service, |
|
|
unsigned |
instance, |
|
|
unsigned |
cap_pseudonym, |
|
|
unsigned |
parent_id = CAP_PARENT_ID | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::get_quota |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_client_pseudonym, |
|
|
const char * |
name, |
|
|
long |
invalue, |
|
|
long * |
outvalue = 0 | |
|
) |
| | [inline, static] |
static Utcb& ParentProtocol::init_frame |
( |
Utcb & |
utcb, |
|
|
unsigned |
op, |
|
|
unsigned |
id | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::kill |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_client_pseudonym, |
|
|
unsigned |
service_cap = 0 | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::register_service |
( |
Utcb & |
utcb, |
|
|
const char * |
service, |
|
|
unsigned |
cpu, |
|
|
unsigned |
pt, |
|
|
unsigned |
cap_service, |
|
|
char * |
revoke_mem = 0 | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::release_pseudonym |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_pseudonym | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::set_singleton |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_client_pseudonym, |
|
|
unsigned |
cap_local_session | |
|
) |
| | [inline, static] |
static unsigned ParentProtocol::unregister_service |
( |
Utcb & |
utcb, |
|
|
unsigned |
cap_service | |
|
) |
| | [inline, static] |
The documentation for this struct was generated from the following file: