2 releases
0.1.1 | Feb 12, 2023 |
---|---|
0.1.0 | Feb 12, 2023 |
#14 in #connecting
14KB
99 lines
Rust Cryptol Client
Purpose
This crate is a collection of utilities for connecting to and
interacting with a running
cryptol-remote-api
instance.
Assurance
This project uses a number of mechanisms for increasing its assurance.
- #![forbid(unsafe_code)] is used to ensure the use of safe Rust,
- the
clippy
linter is used at the pedantic level, - the rust formatter is used to ensure the code adheres to idomatic Rust,
- every public function has a postive and negative test,
- the above tools are used by the CI to enforce invariants on this project.
Local Testing
Presuming Docker is available, the project may be tested by first
starting cryptol-remote-api
.
$ docker run --rm -it -p 49352:49352 ghcr.io/galoisinc/cryptol-remote-api:nightly +RTS -N -RTS http --host 0.0.0.0 --port 49352 / --max-occupancy 1000
Next, the following commands may be run to test this project:
$ CRYPTOL_SERVER_URL="http://0.0.0.0:49352" cargo test
$ CRYPTOL_SERVER_URL="http://0.0.0.0:49352" cargo test --example sha384
As well, one can run the provided SHA-384 example as follows:
$ CRYPTOL_SERVER_URL="http://0.0.0.0:49352" cargo run --example sha384 "0x12345678"
Dependencies
~8–17MB
~233K SLoC