idl_demo
Counter demo with capability-provisioned root-hosted VM endpoints.
On this page
- CounterValue (Record)
- CounterState (EnumDecl)
- Counter (Interface)
- CounterService (Object)
- ChildCaps (CapSet)
Interfaces
Counter #
net.nhnn.horn.demo.counter, version 1.0, default transport sync, strict
add #
add(amount: u64) → CounterValue
Transport: sync, label: 0x151198cf73c2
Result capabilities
| Path | Target | Transfer | Rights |
|---|---|---|---|
result.state.Ready |
sel4.Notification |
copy | ALL |
Objects
CounterService #
CounterService, transport sync
Implements: Counter
Records
CounterValue #
Wire size: 16 bytes, alignment: 8, maximum capabilities: 1
| Field | Type | Byte offset |
|---|---|---|
value |
u64 |
0 |
generation |
u32 |
8 |
state |
CounterState |
12 |
Enums
CounterState #
Base: u32
| Variant | Tag | Payload |
|---|---|---|
| Empty | 0 | void |
| Ready | 1 | Cap[sel4.Notification, copy, ALL] |
Capsets
ChildCaps #
| Field | Capability | Slot |
|---|---|---|
| service | Cap[CounterService, copy, ALL] |
1 |
| wake | Cap[sel4.Notification, copy, ALL] |
2 |
| reply | Cap[sel4.Reply, move, ALL] |
3 |
| vm | Cap[sel4.Endpoint, copy, ALL] |
4 |
| address_space | Cap[sel4.Endpoint, copy, ALL] |
5 |
| lifecycle | Cap[sel4.Endpoint, copy, ALL] |
6 |
| process_factory | Cap[sel4.Endpoint, copy, ALL] |
7 |
| process_observer | Cap[sel4.Endpoint, copy, ALL] |
8 |
| elf | Cap[sel4.Endpoint, copy, ALL] |
9 |