mirror of
https://github.com/freemkv/libfreemkv.git
synced 2026-10-07 18:13:10 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7d58ba7b08 |
+1
-1
@@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "libfreemkv"
|
||||
version = "0.29.0"
|
||||
version = "0.30.0"
|
||||
edition = "2024"
|
||||
rust-version = "1.86"
|
||||
license = "AGPL-3.0-only"
|
||||
|
||||
@@ -1672,6 +1672,16 @@ impl Disc {
|
||||
// Content samples need the disc reader, which scan does not retain;
|
||||
// the caller fills these for sources that validate against ciphertext.
|
||||
samples: Vec::new(),
|
||||
// Human title: prefer the UDF/ISO volume identifier, fall back to the
|
||||
// BDMV display name. Identity only — a key service may catalog it.
|
||||
volume_label: {
|
||||
let v = self.volume_id.trim();
|
||||
if v.is_empty() {
|
||||
self.meta_title.clone()
|
||||
} else {
|
||||
Some(v.to_string())
|
||||
}
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -35,6 +35,12 @@ pub struct DiscInputs {
|
||||
/// the disc reader, which the library's scan does not retain — so
|
||||
/// [`crate::Disc::inputs`] leaves it empty for the caller to fill.
|
||||
pub samples: Vec<Vec<u8>>,
|
||||
/// The disc's human title — the UDF/ISO volume identifier (e.g.
|
||||
/// `WICKED_FOR_GOOD`), falling back to the BDMV `<di:name>` when present.
|
||||
/// `None` when not captured. Identity only, no secret; a key service may
|
||||
/// record it (keyed by `disc_hash`) to build a hash→title catalog. Not used
|
||||
/// in any AACS derivation.
|
||||
pub volume_label: Option<String>,
|
||||
}
|
||||
|
||||
/// A key source: a stateful provider that hands a disc's candidate [`Key`]s out
|
||||
|
||||
Reference in New Issue
Block a user