diff options
| author | Carl Hetherington <cth@carlh.net> | 2021-01-19 00:33:14 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2021-01-19 00:33:14 +0100 |
| commit | cf46cfbcc9eaa6977ebafc800518f2c4288b6994 (patch) | |
| tree | 7d6b8f45e9c4ce48e6ce05ac908e216256927f2c /src/verify.cc | |
| parent | 1f284533185a798c0ed36669bd6c9729adf6ec5a (diff) | |
Bv2.1 10.1: if any asset is encrypted they all must be.
Diffstat (limited to 'src/verify.cc')
| -rw-r--r-- | src/verify.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/verify.cc b/src/verify.cc index 3b0fb7c9..5644d369 100644 --- a/src/verify.cc +++ b/src/verify.cc @@ -1131,6 +1131,10 @@ dcp::verify ( stage ("Checking CPL", cpl->file()); validate_xml (cpl->file().get(), xsd_dtd_directory, notes); + if (cpl->any_encrypted() && !cpl->all_encrypted()) { + notes.push_back ({VerificationNote::VERIFY_BV21_ERROR, VerificationNote::PARTIALLY_ENCRYPTED}); + } + for (auto const& i: cpl->additional_subtitle_languages()) { verify_language_tag (i, notes); } @@ -1514,6 +1518,8 @@ dcp::note_to_string (dcp::VerificationNote note) return String::compose("The PKL %1, which has encrypted content, is not signed", note.file()->filename()); case dcp::VerificationNote::PKL_ANNOTATION_TEXT_DOES_NOT_MATCH_CPL_CONTENT_TITLE_TEXT: return String::compose("The PKL %1 has only one CPL but its <AnnotationText> does not match the CPL's <ContentTitleText>", note.file()->filename()); + case dcp::VerificationNote::PARTIALLY_ENCRYPTED: + return "Some assets are encrypted but some are not"; } return ""; |
