Cargo Features
[dependencies]
rustls-rustcrypto = { version = "0.0.2-alpha", default-features = false, features = ["logging", "tls12", "std", "alloc", "zeroize"] }
- default = std, tls12, zeroize
-
These default features are set whenever
rustls-rustcrypto
is added without
somewhere in the dependency tree.default-features = false - logging
- tls12 default
-
Affects
rustls-rustcrypto::TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
,rustls-rustcrypto::TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
,rustls-rustcrypto::TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
,rustls-rustcrypto::TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
,rustls-rustcrypto::TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
,rustls-rustcrypto::TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
… - std default = alloc
-
Only enable feature in upstream if there is an overall effect e.g. aead/alloc in-place zeroize is another typical that can be turned off
TODO: go through all of these that what gets exposed re: std error typeEnables std of ed25519-dalek, rustls-pki-types, rustls, and rustls-webpki
- alloc std
-
TODO: go through all of these to ensure to_vec etc. impls are exposed
Enables alloc of aead, ed25519-dalek, rustls-pki-types, and rustls-webpki
- zeroize default
-
Enables zeroize of ed25519-dalek and x25519-dalek
Features from optional dependencies
Ensure all dependencies + feats are mapped to crate features for correct usage default features often have std breaking no_std and potentially other unwanted