horn_registry

Scoped discovery of configured service interfaces; no process/device authority.

On this page

Interfaces

RegistryDirectory #

net.nhnn.horn.registry.directory, version 1.0, default transport sync, strict

list #

list(after: u64, recursive: bool) → Result[RegistryPage, RegistryError]

Transport: sync, label: 0x52d9e13b64871

lookup #

lookup(path: List[u8, 96]) → Result[Cap[sel4.Endpoint, move, ALL], RegistryError]

Transport: sync, label: 0xe2bc85ae8e66d

Result capabilities
Path Target Transfer Rights
result.Ok sel4.Endpoint move ALL

open #

open(path: List[u8, 96]) → Result[Cap[RegistryNode, move, ALL], RegistryError]

Transport: sync, label: 0x94913b5da2703

Result capabilities
Path Target Transfer Rights
result.Ok RegistryNode move ALL

watch #

watch(signal: Cap[sel4.Notification, borrow, ALL], generation: u64) → Result[u64, RegistryError]

Transport: sync, label: 0x8d42bf0c2c7db

Request capabilities
Path Target Transfer Rights
signal sel4.Notification borrow ALL

Objects

RegistryNode #

RegistryNode, transport sync

Implements: RegistryDirectory

Records

RegistryEntry #

Wire size: 112 bytes, alignment: 8, maximum capabilities: 0

Field Type Byte offset
name List[u8, 96] 0
kind RegistryKind 104
available bool 108

RegistryPage #

Wire size: 472 bytes, alignment: 8, maximum capabilities: 0

Field Type Byte offset
entries List[RegistryEntry, 4] 0
next u64 456
generation u64 464

Enums

RegistryError #

Base: u32

VariantValue
Denied1
NotFound2
Unavailable3
Invalid4
Exhausted5

RegistryKind #

Base: u32

VariantValue
Directory1
Interface2