Cargo Features

[dependencies]
product-os-proxy = { version = "0.0.13", default-features = false, features = ["decoder", "http2", "native-tls-client", "openssl-ca", "rcgen-ca", "rustls-client", "tor", "vpn", "vendored-openssl"] }
default = decoder, rcgen-ca, rustls-client

These default features are set whenever product-os-proxy is added without default-features = false somewhere in the dependency tree.

decoder default

Enables async-compression, tokio-util, io-util of tokio

http2

Enables http2 of hyper and optional hyper-rustls

native-tls-client

Enables hyper-tls, native-tls of tokio-tungstenite ^0.21.0

openssl-ca = openssl

Enables moka

rcgen-ca default

Enables moka, rand, rcgen, and time

rustls-client default

Enables hyper-rustls, rustls-tls-webpki-roots of tokio-tungstenite ^0.21.0

tor = anyhow, arti-client, arti-hyper, educe, pin-project, rustls, tls-api, tls-api-native-tls, tls-api-openssl, tls-api-rustls, tls-api-security-framework, tor-error, tor-rtcompat

Enables rustls and tokio of tor-rtcompat ^0.17.0

Affects tor_http_rustls::ArtiHttpConnector, tor_http_rustls::ArtiHttpConnection, tor_http_tls::ArtiHttpConnector, tor_http_tls::ArtiHttpConnection

vpn = product-os-vpn

Affects mitm::HttpHandler.handle_product_os_response

vendored-openssl

Enables vendored of openssl

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.

Based on hudsucker

openssl openssl-ca? vendored-openssl?
arti-client tor?

Enables arti-client ^0.17.0

arti-hyper tor?

Enables arti-hyper ^0.17.0

tor-rtcompat tor?

Enables tor-rtcompat ^0.17.0

tls-api tor?
tls-api-openssl tor?
tls-api-rustls tor?
tls-api-native-tls tor?
tls-api-security-framework tor?
pin-project tor?

Enables pin-project

Support for Tor http tls

educe tor?

Enables educe ^0.4.19

tor-error tor?

Enables tor-error ^0.3.4

anyhow tor?
rustls tor?

Enables rustls ^0.20.7

product-os-vpn vpn?