Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
44d8faa
Spike: Retrofit io_utils call sites
scouten-adobe Sep 23, 2025
e509d31
Spike: Adapt verify_cose
scouten-adobe Sep 23, 2025
2a39a23
Spike: Retrofit Store::handle_remote_manifest
scouten-adobe Sep 23, 2025
73aead9
Spike: Retrofit sign_claim
scouten-adobe Sep 23, 2025
296aa51
Spike: Push farther up the Store API chain
scouten-adobe Sep 23, 2025
ffd8015
Spike: Push Settings up through Ingredient API chain
scouten-adobe Sep 24, 2025
de83d42
Spike: Push settings up through Reader API
scouten-adobe Sep 24, 2025
5e638e8
Spike: Push settings farther up Builder and Ingredient API chains
scouten-adobe Sep 24, 2025
b5093a4
Spike: Push settings up through thumbnail utils
scouten-adobe Sep 24, 2025
023fde2
Switch check_ingredient_trust to passed settings
scouten-adobe Sep 24, 2025
427c7e1
Plumb settings through core OCSP logic
scouten-adobe Sep 24, 2025
d3a078f
Plumb settings through Store's OCSP logic
scouten-adobe Sep 24, 2025
eb40a9f
One more reference in ingredient
scouten-adobe Sep 24, 2025
ae3aee6
Plumb settings through add_auto_actions_assertions_settings
scouten-adobe Sep 24, 2025
929a396
Plumb settings through more of Builder
scouten-adobe Sep 24, 2025
899b0ab
Remove last references to get_settings_value in Builder
scouten-adobe Sep 24, 2025
fbe8976
Remove remaining references to get_settings_value in Store
scouten-adobe Sep 24, 2025
c4e255c
Remove remaining references to get_settings_value in Reader
scouten-adobe Sep 24, 2025
3a4d500
Remove remaining references to get_settings_value in Claim
scouten-adobe Sep 24, 2025
68ba524
Remove remaining references to get_settings_value from IdentityAssertion
scouten-adobe Sep 24, 2025
fce4aa8
Remove remaining get_settings_value references from time_stamp code
scouten-adobe Sep 24, 2025
beecb93
Remove remaining references to get_settings_value outside Settings mod
scouten-adobe Sep 24, 2025
81efbdc
Move Settings::get_value to private
scouten-adobe Sep 24, 2025
3da6b20
Move Settings::reset to private
scouten-adobe Sep 24, 2025
c3de5a0
Merge branch 'main' into scouten/settings-not-thread-local
scouten-adobe Sep 24, 2025
4608f62
Clippy
scouten-adobe Sep 24, 2025
8941f2c
cargo fmt
scouten-adobe Sep 24, 2025
4f6e63f
Fix some Wasm build errors
scouten-adobe Sep 24, 2025
913172d
Merge branch 'main' into scouten/settings-not-thread-local
scouten-adobe Sep 24, 2025
eead715
Fix one more Wasm build error
scouten-adobe Sep 24, 2025
efdae9f
cargo fmt
scouten-adobe Sep 24, 2025
31c9dc6
Make Settings::reset() pub(crate) for now
scouten-adobe Sep 24, 2025
953e690
Retrofit Builder::to_claim()
scouten-adobe Sep 24, 2025
7f9e282
Retrofit Builder::add_actions_assertion_settings
scouten-adobe Sep 24, 2025
c3eb1ca
Retrofit Builder::add_auto_actions_assertions_settings
scouten-adobe Sep 24, 2025
7192282
Retrofit Builder::to_store
scouten-adobe Sep 24, 2025
8296652
Retrofit Claim::verify_actions
scouten-adobe Sep 24, 2025
c480a42
Retrofit Claim::verify_internal
scouten-adobe Sep 24, 2025
310ebd1
Retrofit cose_sign::signing_cert_valid
scouten-adobe Sep 24, 2025
e21b6ac
Retrofit cose_sign::cose_sign
scouten-adobe Sep 24, 2025
24538a7
Retrofit Ingredient::from_file_impl
scouten-adobe Sep 24, 2025
b937db4
Merge branch 'main' into scouten/settings-not-thread-local
scouten-adobe Sep 25, 2025
eb2477c
Clippy
scouten-adobe Sep 25, 2025
bd3d3e4
Retrofit Store::new_with_label
scouten-adobe Sep 25, 2025
e58780a
Retrofit Store::new
scouten-adobe Sep 25, 2025
eb170fd
Retrofit Store::get_ocsp_status
scouten-adobe Sep 25, 2025
93ece88
Retrofit Store::get_manifest_labels_for_ocsp
scouten-adobe Sep 25, 2025
230e36c
Retrofit Store::sign_claim
scouten-adobe Sep 25, 2025
dd5c69e
Retrofit Store::from_jumbf
scouten-adobe Sep 25, 2025
c0e6783
Split out public API revisions to TO DO #1454
scouten-adobe Sep 25, 2025
f196ae1
Retrofit Builder::maybe_add_thumbnail
scouten-adobe Sep 25, 2025
0122490
Retrofit Store::iingredient_checks
scouten-adobe Sep 25, 2025
5724172
Retrofit Store::generate_bmff_data_hash_for_stream
scouten-adobe Sep 25, 2025
29116b8
Retrofit Store::get_data_hashed_embeddable_manifest
scouten-adobe Sep 25, 2025
07e826a
Retrofit Store::get_data_hashed_embeddable_manifest_async
scouten-adobe Sep 25, 2025
e974cea
Merge branch 'main' into scouten/settings-not-thread-local
scouten-adobe Sep 30, 2025
39544ef
Retrofit Store::get_box_hashed_embeddable_manifest
scouten-adobe Sep 30, 2025
d8a2881
Retrofit Store::get_box_hashed_embeddable_manifest_async
scouten-adobe Sep 30, 2025
fd4edee
Retrofit Store::start_save_bmff_fragmented
scouten-adobe Sep 30, 2025
118640d
Retrofit Store::save_to_strema(_async) and ::save_to_bmff_fragmented
scouten-adobe Sep 30, 2025
2fed088
Retrofit Store::start_save_stream
scouten-adobe Sep 30, 2025
434938a
Retrofit Store::verify_from_path
scouten-adobe Sep 30, 2025
1c7cb74
Retrofit Store::from_manifest_data_and_stream
scouten-adobe Sep 30, 2025
3607330
Retrofit Store::load_from_file_and_fragments
scouten-adobe Sep 30, 2025
3ac02b0
Retrofit Store::load_ingredient_to_claim
scouten-adobe Sep 30, 2025
d603795
Clippy
scouten-adobe Sep 30, 2025
1d4f8d6
Retrofit Store::test_async_dynamic_assertions
scouten-adobe Oct 1, 2025
924af31
Retrofit BmffHash::create_merkle_map_for_mdat_box
scouten-adobe Oct 1, 2025
263e13d
Retrofit verify_time_stamp
scouten-adobe Oct 1, 2025
0268023
Retrofit Store::get_store_validation_info
scouten-adobe Oct 1, 2025
98222b5
TO REVIEW: Can we avoid passing settings into the BmffIO implementati…
scouten-adobe Oct 1, 2025
45e165f
Retrofit Ingredient::add_to_claim
scouten-adobe Oct 1, 2025
f3352bf
Retrofit parse_and_validate_sigtst
scouten-adobe Oct 1, 2025
b0bf042
TO REVIEW: I don't think default_rfc3161_request needs to have Settin…
scouten-adobe Oct 1, 2025
1653c4f
Clippy
scouten-adobe Oct 1, 2025
350f946
Merge branch 'main' into scouten/settings-not-thread-local
scouten-adobe Oct 1, 2025
9be45f6
Fix up some Wasm build errors
scouten-adobe Oct 1, 2025
10b2f6a
fix: use validation state from reader constructor
ok-nick Oct 3, 2025
9551bcf
refactor: simplify Reader
ok-nick Oct 3, 2025
b2c687f
fix: private `Ingredient::maybe_add_thumbnail` and clean up todos
ok-nick Oct 3, 2025
9f2cb0c
fix: `Store::add with_settings` and `Store::from_jumbf_with_settings`…
ok-nick Oct 3, 2025
ff0b160
fix: stack overflow when constructing store
ok-nick Oct 6, 2025
4d6fb4d
style: fix clippy lints
ok-nick Oct 6, 2025
07dedf9
fix: remove ingredient new public API for now
ok-nick Oct 6, 2025
779c1fe
style: remove todo to add settings to identity assertion (deferred to…
ok-nick Oct 6, 2025
4e605d0
fix: remove public API changes to builder for now
ok-nick Oct 6, 2025
7aeb9c3
style: remove todos in claim
ok-nick Oct 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions sdk/src/assertions/bmff_hash.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ use crate::{
},
asset_io::CAIRead,
cbor_types::UriT,
settings::get_settings_value,
settings::Settings,
utils::{
hash_utils::{
concat_and_hash, hash_stream_by_alg, vec_compare, verify_stream_by_alg, HashRange,
Expand Down Expand Up @@ -1037,15 +1037,14 @@ impl BmffHash {
#[cfg(feature = "file_io")]
pub fn add_merkle_for_fragmented(
&mut self,
max_proofs: usize,
alg: &str,
asset_path: &std::path::Path,
fragment_paths: &Vec<std::path::PathBuf>,
output_dir: &std::path::Path,
local_id: usize,
unique_id: Option<usize>,
) -> crate::Result<()> {
let max_proofs = get_settings_value::<usize>("core.merkle_tree_max_proofs")?;

if !output_dir.exists() {
std::fs::create_dir_all(output_dir)?;
} else {
Expand Down Expand Up @@ -1342,8 +1341,9 @@ impl BmffHash {
reader: &mut dyn CAIRead,
box_info: &BoxInfoLite,
merkle_map: &mut MerkleMap,
settings: &Settings,
) -> crate::Result<Vec<Vec<u8>>> {
let max_proofs = get_settings_value::<usize>("core.merkle_tree_max_proofs")?;
let max_proofs = settings.core.merkle_tree_max_proofs;

// build the Merkle tree
let m_tree = self.create_merkle_tree_for_merkle_map(reader, box_info, merkle_map)?;
Expand Down
3 changes: 2 additions & 1 deletion sdk/src/asset_handlers/bmff_io.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1684,6 +1684,7 @@ impl CAIWriter for BmffIO {
// if the incoming Store has an update manifest we must split it into original and update stores
let mut validation_log =
StatusTracker::with_error_behavior(ErrorBehavior::StopOnFirstError);

let (pc, is_update) = if let Ok(store) = Store::from_jumbf(store_bytes, &mut validation_log)
{
let pc = store
Expand Down Expand Up @@ -1726,7 +1727,7 @@ impl CAIWriter for BmffIO {
let pc = pc.ok_or(Error::BadParam("no provenance manifest".to_string()))?;

let mut update_store = Store::from_jumbf(update_manifest_bytes, &mut validation_log)?;
// add new update manfiest or replace existing one if the is a finalization pass
// add new update manfiest or replace existing one if the is a 8finalization pass
update_store.replace_claim_or_insert(pc.label().to_string(), pc);

let new_update_bytes = update_store.to_jumbf_internal(0)?;
Expand Down
4 changes: 4 additions & 0 deletions sdk/src/asset_handlers/c2pa_io.rs
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,7 @@ pub mod tests {
use super::{AssetIO, C2paIO, CAIReader, CAIWriter};
use crate::{
crypto::raw_signature::SigningAlg,
settings::Settings,
status_tracker::{ErrorBehavior, StatusTracker},
store::Store,
utils::{
Expand All @@ -160,6 +161,8 @@ pub mod tests {

#[test]
fn c2pa_io_parse() {
let settings = Settings::default();

let path = fixture_path("C.jpg");

let temp_dir = tempdirectory().expect("temp dir");
Expand All @@ -183,6 +186,7 @@ pub mod tests {
&stream,
true,
&mut StatusTracker::with_error_behavior(ErrorBehavior::StopOnFirstError),
&settings,
)
.expect("loading store");

Expand Down
Loading
Loading