diff options
| author | Carl Hetherington <cth@carlh.net> | 2025-12-17 18:26:27 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2025-12-18 02:07:55 +0100 |
| commit | c715c9e35c031ece656808b20ad0f95ac9e70e7b (patch) | |
| tree | 188a15fde2aa5c0f87e2449eb519197e9390c143 | |
| parent | 566a07ab73dd2d0dfc592771a4bff9ef2357e1b6 (diff) | |
Allow VerifyDCPJob to take a vector of DecryptedKDMs.
| -rw-r--r-- | src/lib/verify_dcp_job.cc | 28 | ||||
| -rw-r--r-- | src/lib/verify_dcp_job.h | 9 |
2 files changed, 27 insertions, 10 deletions
diff --git a/src/lib/verify_dcp_job.cc b/src/lib/verify_dcp_job.cc index 6b928a146..60ef714d6 100644 --- a/src/lib/verify_dcp_job.cc +++ b/src/lib/verify_dcp_job.cc @@ -43,6 +43,24 @@ VerifyDCPJob::VerifyDCPJob( ) : Job({}) , _directories(directories) + , _options(options) +{ + vector<dcp::DecryptedKDM> decrypted_kdms; + if (auto key = Config::instance()->decryption_chain()->key()) { + for (auto const& kdm: kdms) { + _kdms.push_back(dcp::DecryptedKDM{dcp::EncryptedKDM(dcp::file_to_string(kdm)), *key}); + } + } +} + + +VerifyDCPJob::VerifyDCPJob( + vector<boost::filesystem::path> directories, + vector<dcp::DecryptedKDM> kdms, + dcp::VerificationOptions options + ) + : Job({}) + , _directories(directories) , _kdms(kdms) , _options(options) { @@ -83,17 +101,9 @@ VerifyDCPJob::update_stage(string s, optional<boost::filesystem::path> path) void VerifyDCPJob::run() { - vector<dcp::DecryptedKDM> decrypted_kdms; - auto key = Config::instance()->decryption_chain()->key(); - if (key) { - for (auto kdm: _kdms) { - decrypted_kdms.push_back(dcp::DecryptedKDM{dcp::EncryptedKDM(dcp::file_to_string(kdm)), *key}); - } - } - _result = dcp::verify( _directories, - decrypted_kdms, + _kdms, bind(&VerifyDCPJob::update_stage, this, _1, _2), bind(&VerifyDCPJob::set_progress, this, _1, false), _options, diff --git a/src/lib/verify_dcp_job.h b/src/lib/verify_dcp_job.h index c7b21b484..96a8c8969 100644 --- a/src/lib/verify_dcp_job.h +++ b/src/lib/verify_dcp_job.h @@ -34,6 +34,13 @@ public: std::vector<boost::filesystem::path> kdms, dcp::VerificationOptions options ); + + VerifyDCPJob( + std::vector<boost::filesystem::path> directories, + std::vector<dcp::DecryptedKDM> kdms, + dcp::VerificationOptions options + ); + ~VerifyDCPJob(); std::string name() const override; @@ -52,7 +59,7 @@ private: void update_stage(std::string s, boost::optional<boost::filesystem::path> path); std::vector<boost::filesystem::path> _directories; - std::vector<boost::filesystem::path> _kdms; + std::vector<dcp::DecryptedKDM> _kdms; dcp::VerificationOptions _options; dcp::VerificationResult _result; }; |
