Daohub-io/cap9

Procedure#Register Capability (Ewasm)

Latrasis opened this issue · 6 comments

Test Example in cap9-std/examples/register_test.rs should use #proc_register defined in the internal cap9-std crate.

We need to include a test in tests/syscalls/register.ts that:

  1. Includes Procedure A and Foreign Procedure B.
  2. Procedure A is designated a procedure register capability (type 0x4) that allows it to push a new procedure to the procedure table.
  3. Procedure A receives an address of Procedure B, and invokes the capability to add Procedure B into the procedure table.

Registration must follow steps outlined in docs/spec

I want to split this into two steps:

  • Be able to register a procedure, ignoring capability delegation and subsets.
  • Enforce capability delegation and subsets.

I want to split this into two steps:

* [ ]  Be able to register a procedure, ignoring capability delegation and subsets.

* [ ]  Enforce capability delegation and subsets.

@JakeOShannessy: Makes sense

Implemented enforcement of delegation/subsets and tested for write cap. Just need to implement the logic for the other caps.

Logic implemented for other caps.

Can be considered complete with #175.

Closed with #175.