kc-cli 0.1.0

Read and write macOS keychain files without the Security framework
Documentation
[package]
    authors.workspace      = true
    categories             = ["command-line-utilities", "cryptography", "os::macos-apis"]
    description            = "Read and write macOS keychain files without the Security framework"
    documentation          = "https://docs.rs/kc-cli"
    edition.workspace      = true
    homepage.workspace     = true
    keywords               = ["keychain", "macos", "passwords", "security"]
    license.workspace      = true
    name                   = "kc-cli"
    readme                 = "README.md"
    repository.workspace   = true
    rust-version.workspace = true
    version.workspace      = true

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

[[bin]]
    name = "kc"
    path = "src/bin/kc.rs"

[dependencies]
    # Crypto: 3DES-CBC, PBKDF2-HMAC-SHA1, and the blob signatures
    cbc     = { version = "0.1", features = ["std"] }
    des     = "0.8"
    hmac    = "0.12"
    pbkdf2  = { version = "0.12", features = ["hmac"] }
    rand    = "0.8"
    sha1    = "0.10"
    zeroize = { workspace = true }

    # Encoding
    base64     = "0.22"
    hex        = { workspace = true }
    serde_json = { workspace = true }

    # CLI
    clap.workspace          = true
    clap_complete.workspace = true
    rpassword.workspace     = true

    # Platform
    libc.workspace      = true
    thiserror.workspace = true

    # Optional: read an application's designated requirement straight out of its
    # code signature, for `kc add-* -T`. Off by default so the crate builds
    # without a sibling checkout; see README.md.
    macho-codesign = { version = "0.4.0", optional = true }
    macho-core     = { version = "0.4.0", optional = true }

[features]
    default = []
    # Resolve `-T <app>` by reading the app's designated requirement.
    trust-apps = ["dep:macho-codesign", "dep:macho-core"]