blob: 7f2ee837c2e8982f6bc85b2d2b08722793351ae5 [file] [log] [blame]
David Brown63902772017-07-12 09:47:49 -06001[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
David Brown65de6d12019-01-02 11:38:38 -07008edition = "2018"
David Brown63902772017-07-12 09:47:49 -06009
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
Fabio Utzig39297432019-05-08 18:51:10 -030018# Verify RSA-3072 signatures.
19sig-rsa3072 = []
20
Fabio Utzig8b619bd2017-12-05 08:48:34 -020021# Verify ECDSA (secp256r1) signatures.
David Brown63902772017-07-12 09:47:49 -060022sig-ecdsa = []
23
David Brown641af452021-02-19 12:16:48 -070024# Verify ECDSA (secp256r1) signatures using mbed TLS
25sig-ecdsa-mbedtls = []
26
Fabio Utzig97710282019-05-24 17:44:49 -030027# Verify ED25519 signatures.
28sig-ed25519 = []
29
David Brown63902772017-07-12 09:47:49 -060030# Overwrite only upgrade
31overwrite-only = []
32
Fabio Utzig031eb7d2019-11-28 10:13:14 -030033swap-move = []
34
Roman Okhrimenko977b3752022-03-31 14:40:48 +030035swap-status = []
36
David Vincze2d736ad2019-02-18 11:50:22 +010037# Disable validation of the primary slot
38validate-primary-slot = []
Fabio Utzigebdc9692017-11-23 16:28:25 -020039
David Vincze2d736ad2019-02-18 11:50:22 +010040# Encrypt image in the secondary slot using RSA-OAEP-2048
Fabio Utzig1e48b912018-09-18 09:04:18 -030041enc-rsa = []
42
Roman Okhrimenko977b3752022-03-31 14:40:48 +030043# Encrypt image in the secondary slot using AES-256-CTR and RSA-OAEP-2048
44enc-aes256-rsa = []
45
David Vincze2d736ad2019-02-18 11:50:22 +010046# Encrypt image in the secondary slot using AES-KW-128
Fabio Utzig1e48b912018-09-18 09:04:18 -030047enc-kw = []
48
Roman Okhrimenko977b3752022-03-31 14:40:48 +030049# Encrypt image in the secondary slot using AES-256-CTR and AES-KW-256
50enc-aes256-kw = []
51
Fabio Utzig90f449e2019-10-24 07:43:53 -030052# Encrypt image in the secondary slot using ECIES-P256
53enc-ec256 = []
54
Roman Okhrimenko977b3752022-03-31 14:40:48 +030055# Encrypt image in the secondary slot using AES-256-CTR and ECIES-P256
56enc-aes256-ec256 = []
57
58# Encrypt image in the secondary slot using ECIES-P256 using Mbed TLS
59enc-ec256-mbedtls = []
60
Fabio Utzig3fa72ca2020-04-02 11:20:37 -030061# Encrypt image in the secondary slot using ECIES-X25519
62enc-x25519 = []
63
Roman Okhrimenko977b3752022-03-31 14:40:48 +030064# Encrypt image in the secondary slot using AES-256-CTR and ECIES-X25519
65enc-aes256-x25519 = []
66
David Vincze2d736ad2019-02-18 11:50:22 +010067# Allow bootstrapping an empty/invalid primary slot from a valid secondary slot
Fabio Utzig9b97b132018-12-18 17:21:51 -020068bootstrap = []
69
David Brown5e6f5e02019-04-04 10:50:05 +070070# Support multiple images (currently 2 instead of 1).
71multiimage = []
72
Roman Okhrimenko977b3752022-03-31 14:40:48 +030073# Support simulation of ram-loading. No swaps are performed, and the
74# image is copied to RAM before loading it.
75ram-load = []
76
77# Support simulation of direct XIP. No swaps are performed, the image
78# is directly executed out of whichever partition contains the most
79# appropriate image.
80direct-xip = []
81
David Brown2ee5f7f2020-01-13 14:04:01 -070082# Check (in software) against version downgrades.
83downgrade-prevention = []
84
Roman Okhrimenkodc0ca082023-06-21 20:49:51 +030085# Support images with 32-byte maximum write alignment value.
86max-align-32 = []
Roman Okhrimenko977b3752022-03-31 14:40:48 +030087
David Brown63902772017-07-12 09:47:49 -060088[build-dependencies]
Fabio Utzig455cad52018-10-15 14:36:33 -070089cc = "1.0.25"
David Brown63902772017-07-12 09:47:49 -060090
91[dependencies]
Fabio Utzig03cce472020-02-11 18:55:14 -030092libc = "0.2"
David Brown28215642019-01-02 11:42:39 -070093log = "0.4"
David Brown63902772017-07-12 09:47:49 -060094simflash = { path = "../simflash" }