Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Async tls support #5

Merged
merged 5 commits into from
Oct 12, 2024
Merged

Async tls support #5

merged 5 commits into from
Oct 12, 2024

Conversation

csyJoy
Copy link
Contributor

@csyJoy csyJoy commented Oct 9, 2024

This pr contains following things:

  1. rats-rs async support using tokio-rustls
  2. an async rats-rs echo server
  3. refactor crates features' structure to avoid features contention

1. Asynchronous tdx sgx quote generation phase via
`tokio::spawn_block`.
2. Propagate `async` to function that call or implicitly call
asynchronous interface.
3. add asynchronous test.
…refactor

1. add `rustls` module in transport module which use
`tokio-rustls` to support async IO by `tokio`
2. refactor current crates' features structure to avoid feature
contention
1. adjust the position of `#[maybe_async]` for test cases.
2. remove `example/*` from default-members in `Cargo.toml` which
will cause default `cargo build` fail.
3. use `-p` instead of `--bin` while building an example.
4. adding `base` feature in `rats-rs`, making it convenient to
re-add the basic features after disabling the default features.
Copy link
Collaborator

@imlk0 imlk0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a great job of making rats-rs better integrated with popular components in the rust ecosystem!
I've reviewed it. Feel free to leave your comments!
lol

rats-rs/src/tee/sgx_dcap/attester.rs Outdated Show resolved Hide resolved
rats-rs/src/transport/tls/client.rs Show resolved Hide resolved
.github/workflows/build-and-test.yaml Show resolved Hide resolved
…cumentation updated.

1. add missing error handling code.
2. move `Vec` instead of raw ptr while spawning a async block
task
3. add comments explaining the reason for implementing `Send` to
tls `Client` `Server`
4. document update about cargo building package from `--bin` to
`-p`
@imlk0 imlk0 merged commit 25a123d into inclavare-containers:master Oct 12, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants