[package]
name = "tocat-plugins"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
description = "The plugins compiled into tocat, a socat-inspired relay"
readme = "README.md"
repository.workspace = true
license.workspace = true
keywords = ["plugin", "proxy", "relay", "tocat", "wasm"]
categories = ["network-programming"]
[dependencies]
base64 = { version = "0.23.1", optional = true }
blake2 = { version = "0.11.0-rc.6", optional = true }
blake3 = { version = "1.8.6", optional = true }
digest = { version = "0.11.3", optional = true }
hex = { version = "0.4.3", optional = true }
md-5 = { version = "0.11.0", optional = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true, optional = true }
sha1 = { version = "0.11.0", optional = true }
sha2 = { version = "0.11.0", optional = true }
sha3 = { version = "0.12.0", optional = true }
tocat-api = { workspace = true }
tocat-wasm-abi = { workspace = true, optional = true }
wasmtime = { workspace = true, optional = true }
zstd = { version = "0.13.3", optional = true }
[features]
default = [
"base64",
"block",
"compress",
"frame",
"hash",
"hexify",
"limit",
"process",
"rate",
"tee",
"throttle",
"timeout",
"wasm"
]
base64 = ["dep:base64"]
block = []
compress = ["dep:zstd"]
frame = []
hash = [
"dep:blake2",
"dep:blake3",
"dep:digest",
"dep:md-5",
"dep:sha1",
"dep:sha2",
"dep:sha3",
]
hexify = ["dep:hex"]
limit = []
process = []
rate = []
tee = []
throttle = []
timeout = []
wasm = ["dep:serde_json", "dep:tocat-wasm-abi", "dep:wasmtime"]