The program cryptography_vectors
The module `cryptography` as it ships, at work (docs/CRYPTOGRAPHY.md).
This program imports the module through its import slots, as `agenda` imports `calendar`: each call is a direct call of an export. It runs the published vectors of each primitive through the exports, checks that a changed byte, or a point of small order, gives its error record and no byte of output, measures the speed of each primitive and the cost of one call of an export, and shows the hash of the module in the boot image: the hash names the code that ran.
| Fact | Value |
|---|---|
| Source | programs/cryptography_vectors |
| Boot image | in the boot image; the image is not built, so its size is not known |
| Imports | cryptography |
| Imported by | none |
Exports
| Export | What it does |
|---|---|
| entry() |
Read from the source of the module, as the build reads it to describe the exports (tools/kerneltool/describe.odin).
What the root service gives it
| What | Value | As the root service says |
|---|---|---|
| Grants | {.Image} | It reads the hash of the module cryptography in the boot image. |
| Budget: pages, programs, threads | {pages = 2048, programs = 1, threads = 1} | Not named in things_of: the budget of each other program. |
Read from grants_of and things_of in programs/root/main.odin; budget_of in the same file adds the limits of processor time and of log records.
