mediatek-optical 1.0.0

MediaTek MT1959/MT1939 optical drive (BD/DVD) protocol: command encoding, identity and flash sequences over any SCSI transport, chip detection, hardware families, AES-CMAC integrity, family-gated updates and OEM image reconstruction. no_std by default.
Documentation
# 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.75"
name = "mediatek-optical"
version = "1.0.0"
authors = ["Matthew Jackson <1085847+MattJackson@users.noreply.github.com>"]
build = false
include = [
    "/src/**",
    "/tests/**",
    "/docs/**",
    "/README.md",
    "/CHANGELOG.md",
    "/RELEASE.md",
    "/LICENSE-MIT",
    "/CODE_OF_CONDUCT.md",
    "/.github/scripts/check-features.py",
    "/examples/flash.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "MediaTek MT1959/MT1939 optical drive (BD/DVD) protocol: command encoding, identity and flash sequences over any SCSI transport, chip detection, hardware families, AES-CMAC integrity, family-gated updates and OEM image reconstruction. no_std by default."
homepage = "https://github.com/MattJackson/mediatek-optical"
documentation = "https://docs.rs/mediatek-optical"
readme = "README.md"
keywords = [
    "mediatek",
    "optical",
    "scsi",
    "firmware",
    "bluray",
]
categories = [
    "hardware-support",
    "no-std::no-alloc",
]
license = "MIT"
repository = "https://github.com/MattJackson/mediatek-optical"

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

[features]
drive = []
enc = ["dep:aes"]
image = [
    "std",
    "dep:aes",
    "dep:cmac",
    "dep:sha2",
]
oem = [
    "image",
    "dep:sha2",
]
std = []

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

[[example]]
name = "flash"
path = "examples/flash.rs"
required-features = [
    "drive",
    "image",
    "enc",
]

[[test]]
name = "decoding_corpus"
path = "tests/decoding_corpus.rs"

[[test]]
name = "entry_corpus"
path = "tests/entry_corpus.rs"
required-features = ["drive"]

[[test]]
name = "envelope_corpus"
path = "tests/envelope_corpus.rs"
required-features = [
    "image",
    "enc",
]

[[test]]
name = "error_codes"
path = "tests/error_codes.rs"

[[test]]
name = "family_corpus"
path = "tests/family_corpus.rs"
required-features = ["image"]

[[test]]
name = "hoard_chip"
path = "tests/hoard_chip.rs"
required-features = ["image"]

[[test]]
name = "oem_cmac_vectors"
path = "tests/oem_cmac_vectors.rs"

[[test]]
name = "oem_facts"
path = "tests/oem_facts.rs"

[[test]]
name = "protocol_boundaries"
path = "tests/protocol_boundaries.rs"

[[test]]
name = "receiver_corpus"
path = "tests/receiver_corpus.rs"

[dependencies.aes]
version = "0.8"
optional = true

[dependencies.cmac]
version = "0.7"
optional = true

[dependencies.sha2]
version = "0.10"
optional = true

[dev-dependencies.serde]
version = "1"
features = ["derive"]

[dev-dependencies.serde_json]
version = "1"