1[package]
2name = "mcuboot-sys"
3version = "0.1.0"
4authors = ["David Brown <david.brown@linaro.org>"]
5description = "A simple wrapper around the mcuboot code."
6build = "build.rs"
7publish = false
8edition = "2021"
9
10[features]
11# By default, build with simplistic signature verification.
12default = []
13
14# Verify RSA signatures.  Note that at this time, the C code will not
15# compile with both sig-rsa and sig-ecdsa enabled.
16sig-rsa = []
17
18# Verify RSA-3072 signatures.
19sig-rsa3072 = []
20
21# Verify ECDSA (secp256r1) signatures.
22sig-ecdsa = []
23
24# Verify ECDSA (secp256r1) signatures using mbed TLS
25sig-ecdsa-mbedtls = []
26
27# Verify ECDSA (p256 or p384) signatures using PSA Crypto API
28sig-ecdsa-psa = []
29
30# Enable P384 Curve support (instead of P256) for PSA Crypto
31sig-p384 = []
32
33# Verify ED25519 signatures.
34sig-ed25519 = []
35
36# Overwrite only upgrade
37overwrite-only = []
38
39swap-move = []
40
41# Disable validation of the primary slot
42validate-primary-slot = []
43
44# Encrypt image in the secondary slot using RSA-OAEP-2048
45enc-rsa = []
46
47# Encrypt  image in the secondary slot using AES-256-CTR and RSA-OAEP-2048
48enc-aes256-rsa = []
49
50# Encrypt image in the secondary slot using AES-KW-128
51enc-kw = []
52
53# Encrypt image in the secondary slot using AES-256-CTR and AES-KW-256
54enc-aes256-kw = []
55
56# Encrypt image in the secondary slot using ECIES-P256
57enc-ec256 = []
58
59# Encrypt image in the secondary slot using AES-256-CTR and ECIES-P256
60enc-aes256-ec256 = []
61
62# Encrypt image in the secondary slot using ECIES-P256 using Mbed TLS
63enc-ec256-mbedtls = []
64
65# Encrypt image in the secondary slot using ECIES-X25519
66enc-x25519 = []
67
68# Encrypt image in the secondary slot using AES-256-CTR and ECIES-X25519
69enc-aes256-x25519 = []
70
71# Allow bootstrapping an empty/invalid primary slot from a valid secondary slot
72bootstrap = []
73
74# Support multiple images (currently 2 instead of 1).
75multiimage = []
76
77# Support simulation of ram-loading.  No swaps are performed, and the
78# image is copied to RAM before loading it.
79ram-load = []
80
81# Support simulation of direct XIP.  No swaps are performed, the image
82# is directly executed out of whichever partition contains the most
83# appropriate image.
84direct-xip = []
85
86# Check (in software) against version downgrades.
87downgrade-prevention = []
88
89# Support images with 32-byte maximum write alignment value.
90max-align-32 = []
91
92# Enable hardware rollback protection
93hw-rollback-protection = []
94
95# Enable the PSA Crypto APIs where supported for cryptography related operations.
96psa-crypto-api = []
97
98[build-dependencies]
99cc = "1.0.25"
100
101[dependencies]
102libc = "0.2"
103log = "0.4"
104simflash = { path = "../simflash" }
105