Cargo Features

[dependencies]
s2n-quic = { version = "1.49.0", default-features = false, features = ["provider-tls-fips", "provider-address-token-default", "provider-event-console-perf", "provider-event-tracing", "provider-tls-default", "provider-tls-rustls", "provider-tls-s2n", "unstable_client_hello", "unstable_private_key", "unstable_resumption", "unstable-provider-datagram", "unstable-provider-io-testing", "unstable-provider-io-turmoil", "unstable-provider-io-xdp", "unstable-provider-packet-interceptor", "unstable-provider-random", "unstable-provider-dc", "unstable-congestion-controller", "unstable-limits"] }
default = provider-address-token-default, provider-tls-default

These default features are set whenever s2n-quic is added without default-features = false somewhere in the dependency tree.

provider-tls-fips

Enables fips of optional s2n-quic-rustls, optional s2n-quic-tls, and optional s2n-quic-tls-default

s2n-quic-tls-default:

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.

provider-address-token-default default = cuckoofilter, hash_hasher, s2n-quic-crypto, zerocopy, zeroize
provider-event-console-perf = humansize

Affects event::console_perf

provider-event-tracing

Enables event-tracing of s2n-quic-core

provider-tls-default default = s2n-quic-tls-default
provider-tls-rustls = s2n-quic-rustls
provider-tls-s2n = s2n-quic-tls
unstable_client_hello

List of unstable features. Add new unstable features to the check in s2n-quic/src/lib.rs
These depend on experimental behavior in s2n-tls.

Enables unstable_client_hello of s2n-quic-tls

unstable_private_key

Enables unstable_private_key of s2n-quic-tls

unstable_resumption

Enables unstable_resumption of s2n-quic-transport

unstable-provider-datagram

This feature enables the datagram provider

unstable-provider-io-testing

This feature enables the testing IO provider

Enables io-testing of s2n-quic-platform

unstable-provider-io-turmoil

This feature enables the turmoil IO provider

Enables turmoil of s2n-quic-platform

Affects io::turmoil

unstable-provider-io-xdp

This feature enables the XDP IO provider

Enables xdp of s2n-quic-platform

Affects io::xdp

unstable-provider-packet-interceptor

This feature enables the packet interceptor provider, which is invoked on each cleartext packet

unstable-provider-random

This feature enables the random provider

unstable-provider-dc

This feature enables the dc provider

Enables unstable-provider-dc of s2n-quic-transport

unstable-congestion-controller

This feature enables support for third party congestion controller implementations

Enables unstable-congestion-controller of s2n-quic-core

unstable-limits

This feature enables the use of unstable connection limits

Enables unstable-limits of s2n-quic-core

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

cuckoofilter provider-address-token-default
hash_hasher provider-address-token-default
humansize provider-event-console-perf?
s2n-quic-crypto provider-address-token-default
s2n-quic-rustls provider-tls-rustls?

Affects tls::rustls

s2n-quic-tls provider-tls-s2n? unstable_client_hello? unstable_private_key?

Affects tls::s2n_tls

s2n-quic-tls-default provider-tls-default
zerocopy provider-address-token-default

Enables zerocopy ^0.7

zeroize provider-address-token-default