Cargo Features

s2n-quic-tls-default has no features set by default.

[dependencies]
s2n-quic-tls-default = { version = "0.45.0", features = ["fips", "s2n-quic-tls"] }
fips

The ? syntax only enables fips for s2n-quic-tls if something else enables s2n-quic-tls. This preserves the selective compilation of the two tls crates.

Enables fips of optional s2n-quic-tls

Features from optional dependencies

Declare s2n-quic-tls as an optional dependency since the ? syntax for features requires the dependency be optional.

It is not possible to enable a feature flag based on target since Cargo currently doesn't support platform specific feature flags: https://github.com/rust-lang/cargo/issues/1197. In order to support the ? syntax, we declare s2n-quic-tls as an optional dependency. s2n-quic-tls only gets enabled based on the target.

s2n-quic-tls implicit feature

Enables s2n-quic-tls

s2n-quic-tls:

Internal crate used by s2n-quic