# Copyright 2015 Brian Smith.
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

[package]
authors = ["Brian Smith <brian@briansmith.org>"]
categories = ["cryptography", "no-std"]
description = "Web PKI X.509 Certificate Verification."
documentation = "https://briansmith.org/rustdoc/webpki/"
edition = "2018"
license-file = "LICENSE"
name = "webpki"
readme = "README.md"
repository = "https://github.com/briansmith/webpki"
version = "0.22.0"

include = [
    "Cargo.toml",

    "LICENSE",
    "README.md",

    "src/calendar.rs",
    "src/cert.rs",
    "src/der.rs",
    "src/end_entity.rs",
    "src/error.rs",
    "src/name.rs",
    "src/name/dns_name.rs",
    "src/name/ip_address.rs",
    "src/name/verify.rs",
    "src/signed_data.rs",
    "src/time.rs",
    "src/trust_anchor.rs",
    "src/verify_cert.rs",
    "src/lib.rs",

    "src/data/**/*",

    "tests/dns_name_tests.rs",
    "tests/integration.rs",
    "tests/misc/serial_neg.der",
    "tests/misc/serial_zero.der",
    "tests/netflix/ca.der",
    "tests/netflix/ee.der",
    "tests/netflix/inter.der",
    "tests/ed25519/ca.der",
    "tests/ed25519/ee.der",

    "third-party/chromium/**/*",
]

[package.metadata.docs.rs]
all-features = true

[lib]
name = "webpki"

[features]
alloc = ["ring/alloc"]
std = ["alloc"]

[dependencies]
ring = { version = "0.16.19", default-features = false }
untrusted = "0.7.1"

[dev-dependencies]
base64 = "0.9.1"

[profile.bench]
opt-level = 3
debug = false
rpath = false
lto = true
debug-assertions = false
codegen-units = 1

[profile.release]
opt-level = 3
debug = false
rpath = false
lto = true
debug-assertions = false
codegen-units = 1
