[package]
name = "kbs-client"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[lib]
path = "src/lib.rs"

[[bin]]
name = "kbs-client"
path = "src/main.rs"

[dependencies]
anyhow.workspace = true
base64.workspace = true
clap = { version = "4.0.29", features = ["derive"] }
env_logger.workspace = true
jwt-simple.workspace = true
kbs_protocol = { workspace = true, default-features = false }
log.workspace = true
reqwest = { workspace = true, default-features = false, features = ["cookies", "json"] }
serde = { workspace = true, features = ["derive"] }
serde_json.workspace = true
tokio.workspace = true

[features]
default = ["kbs_protocol/default"]
sample_only = ["kbs_protocol/background_check", "kbs_protocol/passport", "kbs_protocol/rust-crypto"]

ci_test = ["kbs_protocol/background_check", "kbs_protocol/passport", "kbs_protocol/rust-crypto", "kbs_protocol/tdx-attester", "kbs_protocol/system-attester"]

all-attesters = ["tdx-attester", "sgx-attester", "snp-attester", "csv-attester", "cca-attester", "system-attester"]
tdx-attester = ["kbs_protocol/tdx-attester"]
sgx-attester = ["kbs_protocol/sgx-attester"]
snp-attester = ["kbs_protocol/snp-attester"]
csv-attester = ["kbs_protocol/csv-attester"]
cca-attester = ["kbs_protocol/cca-attester"]
system-attester = ["kbs_protocol/system-attester"]
