xref: /aosp_15_r20/external/open-dice/dpe-rs/src/lib.rs (revision 60b67249c2e226f42f35cc6cfe66c6048e0bae6b)
1 // Copyright 2024 Google LLC
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); you may not
4 // use this file except in compliance with the License. You may obtain a copy of
5 // the License at
6 //
7 //     https://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12 // License for the specific language governing permissions and limitations under
13 // the License.
14 
15 #![no_std]
16 #![deny(unsafe_code)]
17 #![deny(missing_docs)]
18 #![deny(trivial_casts)]
19 #![deny(trivial_numeric_casts)]
20 #![deny(unused_extern_crates)]
21 #![deny(unused_import_braces)]
22 #![deny(unused_results)]
23 #![deny(clippy::indexing_slicing)]
24 #![deny(clippy::unwrap_used)]
25 #![deny(clippy::panic)]
26 #![deny(clippy::expect_used)]
27 
28 //! # DICE Protection Environment
29 //!
30 //! `dpe_rs` implements a DICE Protection Environment (DPE) for a family of DPE
31 //! profiles which align with the
32 //! [Open Profile for DICE](<https://pigweed.googlesource.com/open-dice/+/HEAD/docs/specification.md>)
33 //! specification.
34 //!
35 //! # no_std
36 //!
37 //! This crate uses `#![no_std]` for portability to embedded environments.
38 //!
39 //! # Panics
40 //!
41 //! Functions and methods in this crate, aside from tests, do not panic. A panic
42 //! means there is a bug that should be fixed.
43 //!
44 //! # Safety
45 //!
46 //! This crate does not use unsafe code.
47 //!
48 //! # Notes
49 //!
50 //! This crate is in development and not ready for production use.
51 pub mod args;
52 pub mod cbor;
53 pub mod constants;
54 pub mod crypto;
55 pub mod error;
56 pub mod memory;
57 pub mod noise;
58