# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.70"
name = "rtrtr"
version = "0.3.0-rc1"
authors = ["NLnet Labs <rpki-team@nlnetlabs.nl>"]
description = "A versatile tool for managing route filters"
readme = "README.md"
keywords = [
    "rpki",
    "routing-security",
    "bgp",
]
license = "BSD-3-Clause"
repository = "https://github.com/NLnetLabs/rtrtr"

[package.metadata.deb]
assets = [
    [
    "target/release/rtrtr",
    "usr/bin/",
    "755",
],
    [
    "README.md",
    "usr/share/doc/rtrtr/",
    "644",
],
    [
    "doc/rtrtr.1",
    "usr/share/man/man1/rtrtr.1",
    "644",
],
    [
    "etc/rtrtr.conf.system-service",
    "etc/rtrtr.conf",
    "644",
],
    [
    "pkg/common/service.preset",
    "/lib/systemd/system-preset/50-rtrtr.preset",
    "644",
],
]
changelog = "target/debian/changelog"
conf-files = ["/etc/rtrtr.conf"]
copyright = "Copyright (c) 2021, NLnet Labs. All rights reserved."
depends = "$auto, passwd"
extended-description = "RTRTR is an RPKI data proxy, designed to collect Validated ROA Payloads from one or more sources in multiple formats and dispatch it onwards. It provides the means to implement multiple distribution architectures for RPKI such as centralised RPKI validators that dispatch data to local caching RTR servers. "
license-file = [
    "LICENSE",
    "0",
]
maintainer = "The NLnet Labs RPKI Team <rpki@nlnetlabs.nl>"
maintainer-scripts = "pkg/debian"
name = "rtrtr"
priority = "optional"
section = "net"

[package.metadata.deb.systemd-units]
enable = false
unit-name = "rtrtr"
unit-scripts = "pkg/common"

[package.metadata.deb.variants.minimal]

[package.metadata.deb.variants.minimal-cross]
depends = "adduser, passwd"

[package.metadata.generate-rpm]
license = "BSD"

[[package.metadata.generate-rpm.assets]]
dest = "/usr/bin/rtrtr"
mode = "755"
source = "target/release/rtrtr"

[[package.metadata.generate-rpm.assets]]
dest = "/lib/systemd/system/rtrtr.service"
mode = "644"
source = "target/rpm/rtrtr.service"

[[package.metadata.generate-rpm.assets]]
dest = "/usr/share/doc/rtrtr/README.md"
doc = true
mode = "644"
source = "README.md"

[[package.metadata.generate-rpm.assets]]
dest = "/usr/share/man/man1/rtrtr.1"
doc = true
mode = "644"
source = "doc/rtrtr.1"

[[package.metadata.generate-rpm.assets]]
config = true
dest = "/etc/rtrtr.conf"
mode = "644"
source = "etc/rtrtr.conf.system-service"

[[package.metadata.generate-rpm.assets]]
dest = "/lib/systemd/system-preset/50-rtrtr.preset"
mode = "644"
source = "pkg/common/service.preset"

[package.metadata.generate-rpm.requires]
shadow-utils = "*"

[profile.release]
panic = "abort"

[dependencies.arbitrary]
version = "1"
features = ["derive"]
optional = true

[dependencies.arc-swap]
version = "1.0"

[dependencies.bytes]
version = "1"

[dependencies.chrono]
version = "0.4.31"

[dependencies.clap]
version = "~4.4"
features = [
    "cargo",
    "derive",
]

[dependencies.crossbeam-utils]
version = "0.8.4"

[dependencies.daemonbase]
version = "0.1.1"

[dependencies.futures-util]
version = "0.3"

[dependencies.http-body-util]
version = "0.1"

[dependencies.hyper]
version = "1.3.1"
features = ["server"]

[dependencies.hyper-util]
version = "0.1"
features = [
    "server",
    "server-auto",
    "tokio",
]

[dependencies.log]
version = "0.4"

[dependencies.pin-project-lite]
version = "0.2.4"

[dependencies.rand]
version = "0.8.3"

[dependencies.reqwest]
version = "0.12.4"
features = [
    "blocking",
    "rustls-tls",
]
default-features = false

[dependencies.rpki]
version = "0.18.2"
features = [
    "crypto",
    "rtr",
    "slurm",
]

[dependencies.rustls-pemfile]
version = "2.1.2"

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.slab]
version = "0.4.2"

[dependencies.tokio]
version = "1.6"
features = [
    "fs",
    "io-util",
    "macros",
    "net",
    "rt",
    "rt-multi-thread",
    "sync",
    "time",
]

[dependencies.tokio-rustls]
version = "0.25.0"
features = [
    "ring",
    "logging",
    "tls12",
]
default-features = false

[dependencies.toml]
version = "0.8.12"

[dependencies.url]
version = "2.2"
features = ["serde"]

[dependencies.webpki-roots]
version = "0.26.1"

[dev-dependencies.rand_pcg]
version = "0.3"

[dev-dependencies.stderrlog]
version = "0.6"

[features]
arbitrary = [
    "dep:arbitrary",
    "chrono/arbitrary",
    "rpki/arbitrary",
]
default = ["socks"]
socks = ["reqwest/socks"]

[target."cfg(unix)".dependencies.nix]
version = "0.27.1"
features = [
    "fs",
    "mman",
    "net",
    "process",
    "socket",
    "user",
]
