Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
23df759
Fix: optional field in JSON response from MAA API
grydz Feb 3, 2026
c059e7f
Fix: warning 'hiding a lifetime that's elided elsewhere is confusing'
grydz Feb 3, 2026
1769284
Bump asn1 crate
grydz Feb 3, 2026
51610c1
Bump log crate
grydz Feb 3, 2026
de310cd
Bump reqwest crate
grydz Feb 3, 2026
6bfca54
Bump crate rsa
grydz Feb 3, 2026
c8db95b
Bump crate scroll
grydz Feb 3, 2026
61bce6e
Bump crate serde and serde_json
grydz Feb 3, 2026
165f4af
Bump crate sha2
grydz Feb 3, 2026
01e6173
Bump crate x509-parser
grydz Feb 3, 2026
4223f11
Bump Rust edition to 2024 and fix clippy warnings
grydz Feb 3, 2026
3d38054
Bump crate thiserror
grydz Feb 3, 2026
5b9220a
Fix: maa_client crate should use rsa crate from workspace
grydz Feb 4, 2026
dadfb49
Bump crate tdx-attest-rs to tag DCAP_1.24
grydz Feb 4, 2026
ae613ba
Remove crate tracing-subscriber due to RUSTSEC-2025-0055
grydz Feb 5, 2026
f7f4f7e
Bump crate sev to tag v7.1.0
grydz Feb 4, 2026
cde4ded
WIP: changes due to bump of sev crate to v7.1.0
grydz Feb 5, 2026
a152838
Fix: dockerfile for vscode dev container and update README
grydz Mar 30, 2026
7c88f31
WIP
grydz Apr 8, 2026
644347e
Fix: replace jwt-simple with jsonwebtoken to get rid of rsa crate
grydz Apr 14, 2026
aa6fb0c
Fix: tests of ratls crate due to new SEV quote serialization
grydz Apr 15, 2026
aa52fef
Bump rustls-webpki and use aws-lc-rs with x509-parser crate
grydz Apr 15, 2026
13898ee
Fix: apply cargo fmt
grydz Apr 15, 2026
80fc98d
Fix: allow large Err-variant because fix is not straightforward
grydz Apr 16, 2026
18571bd
Fix: bump version of crates with cargo update
grydz Apr 16, 2026
e371e3f
Fix: google's certificate in tls-cert crate tests
grydz Apr 20, 2026
ee2f9fe
Add: LeafCertificateVerifier and make all verifier public
grydz Apr 20, 2026
79eae74
Bump version to 1.7.0
grydz Apr 21, 2026
fe177cc
Fix: add licence for cargo-deny
grydz Apr 23, 2026
0a4f6ef
Fix: explicit CryptoProvider for rustls::ClientConfig
grydz Apr 23, 2026
43f5664
Fix: bump API version for Azure attestation and certificates in tests
grydz May 11, 2026
2c7ab7e
Fix: MAA API expects PEM encoded certification chain instead of DER
grydz May 12, 2026
7204efe
Bump crates from workspace to 2.0.0
grydz May 13, 2026
50fc6a1
Fix: unused comment in deny.toml
grydz May 13, 2026
35e1fc1
Fix: remove test with google's cert due to failure when run in anothe…
grydz May 13, 2026
42a71c4
Fix: remove useless print in tests of azure-cvm crate
grydz May 13, 2026
f2cd284
Bump tss-esapi crate to 7.7
grydz May 13, 2026
70edb3c
Bump version of reqwest and rustls crates
grydz May 18, 2026
d873f20
Fix: offset check when parsing SEV quote
grydz May 18, 2026
9e2d09b
Fix: typo in tls-cert crate description
grydz May 18, 2026
a413ed1
Fix: verify signature of TLS certificate with LeafCertificateVerifier
grydz May 18, 2026
6433d86
Fix: remove unused comment in azure_cvm crate
grydz May 18, 2026
662d0be
Fix: remove unused comment in sev_quote crate
grydz May 18, 2026
09b636c
[CI] Fix: remove obsolete GH actions workflow
grydz May 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 31 additions & 12 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,25 +1,44 @@
FROM ghcr.io/cosmian/intel-sgx:2.25
FROM ubuntu:24.04

RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y

ENV PATH="/root/.cargo/bin:${PATH}"

RUN rustup default stable

RUN rustup component add clippy rustfmt
USER root
ENV DEBIAN_FRONTEND=noninteractive
ENV TS=Etc/UTC
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8

RUN apt-get update && apt-get install --no-install-recommends -qq -y \
build-essential \
clang \
curl \
git \
gnupg \
tzdata\
pkg-config \
libssl-dev \
python3 \
python3-pip \
tpm2-tools \
libtss2-dev \
libtdx-attest-dev \
&& apt-get -y -q upgrade \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& python3 -m pip install "maturin"
&& rm -rf /var/lib/apt/lists/*

RUN sed -i 's,https://localhost:8081/sgx/certification/v4/,https://pccs.staging.mse.cosmian.com/sgx/certification/v4/,' /etc/sgx_default_qcnl.conf
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y

ENV PATH="/root/.cargo/bin:${PATH}"

RUN rustup default stable

RUN rustup component add clippy rustfmt

RUN cargo install --locked cargo-deny

# Intel SGX APT repository
RUN curl -fsSLo /usr/share/keyrings/intel-sgx-deb.asc https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key && \
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/intel-sgx-deb.asc] https://download.01.org/intel-sgx/sgx_repo/ubuntu noble main" \
| tee /etc/apt/sources.list.d/intel-sgx.list

RUN apt-get update && apt-get install --no-install-recommends -qq -y libtdx-attest-dev \
&& apt-get -y -q upgrade \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
67 changes: 35 additions & 32 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,52 +5,55 @@ name: Continuous integration
jobs:
check:
name: Check
runs-on: ubuntu-latest
container:
image: ghcr.io/cosmian/intel-sgx:2.25
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Cache dependencies
id: cargo-cache
uses: Swatinem/rust-cache@v2
with:
key: ${{ github.ref_name }}

- name: Install dependencies
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: |
apt-get update && apt-get install -y libssl-dev tpm2-tools libtss2-dev libtdx-attest-dev
sudo curl -fsSLo /usr/share/keyrings/intel-sgx-deb.asc https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/intel-sgx-deb.asc] https://download.01.org/intel-sgx/sgx_repo/ubuntu noble main" | sudo tee /etc/apt/sources.list.d/intel-sgx.list
sudo apt-get update && sudo apt-get install -y tpm2-tools libtss2-dev libtdx-attest=1.24.100.2-noble1 libtdx-attest-dev=1.24.100.2-noble1

- uses: actions/checkout@v2

- name: Rustup setup
uses: actions-rs/toolchain@v1
- name: Install Rust toolchain and components
if: steps.cargo-cache.outputs.cache-hit != 'true'
uses: dtolnay/rust-toolchain@stable
with:
profile: minimal
toolchain: stable
override: true

- run: rustup component add rustfmt && rustup component add clippy && cargo install cargo-machete
components: rustfmt, clippy

- name: Security Audit
uses: EmbarkStudios/cargo-deny-action@v2
- name: Install cargo-machete
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo install cargo-machete

- name: Cargo fmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo fmt --all -- --check

- name: Cargo check
uses: actions-rs/cargo@v1
with:
command: check
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo check

- name: Clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: -- -D warnings
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo clippy -- -D warnings

- name: Machete (deps checker)
uses: actions-rs/cargo@v1
with:
command: machete
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo machete

- name: Cargo test
uses: actions-rs/cargo@v1
with:
command: test
args: -- --nocapture
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo test -- --nocapture

- name: Cargo build
if: steps.cargo-cache.outputs.cache-hit != 'true'
run: cargo build --release
Loading
Loading