diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/encrypted_kdm.cc | 11 | ||||
| -rw-r--r-- | src/encrypted_kdm.h | 1 | ||||
| -rw-r--r-- | src/smpte_text_asset.h | 1 | ||||
| -rw-r--r-- | src/verify.cc | 4 |
4 files changed, 14 insertions, 3 deletions
diff --git a/src/encrypted_kdm.cc b/src/encrypted_kdm.cc index d1089c0b..23cbb0b5 100644 --- a/src/encrypted_kdm.cc +++ b/src/encrypted_kdm.cc @@ -646,6 +646,10 @@ EncryptedKDM::EncryptedKDM ( kre.recipient.x509_subject_name = recipient.subject (); kre.composition_playlist_id = cpl_id; if (formulation == Formulation::DCI_ANY || formulation == Formulation::DCI_SPECIFIC) { + /* XXX: this should be the thumbprint of one of the CPL signer certificates, + * which might not necessarily be the case if we're using a CPL from somebody + * else. + */ kre.content_authenticator = signer->leaf().thumbprint (); } kre.content_title_text = content_title_text; @@ -835,3 +839,10 @@ dcp::operator== (EncryptedKDM const & a, EncryptedKDM const & b) /* Not exactly efficient... */ return a.as_xml() == b.as_xml(); } + + +vector<string> +EncryptedKDM::trusted_devices() const +{ + return _data->authenticated_public.required_extensions.kdm_required_extensions.authorized_device_info->certificate_thumbprints; +} diff --git a/src/encrypted_kdm.h b/src/encrypted_kdm.h index e74dde69..1f54cc05 100644 --- a/src/encrypted_kdm.h +++ b/src/encrypted_kdm.h @@ -103,6 +103,7 @@ public: LocalTime not_valid_after () const; std::string recipient_x509_subject_name () const; CertificateChain signer_certificate_chain () const; + std::vector<std::string> trusted_devices() const; private: diff --git a/src/smpte_text_asset.h b/src/smpte_text_asset.h index 9b7f09a6..13771833 100644 --- a/src/smpte_text_asset.h +++ b/src/smpte_text_asset.h @@ -216,7 +216,6 @@ private: friend struct ::write_subtitles_in_vertical_order_with_top_alignment; friend struct ::write_subtitles_in_vertical_order_with_bottom_alignment; - void read_fonts (std::shared_ptr<ASDCP::TimedText::MXFReader>); void parse_xml (std::shared_ptr<cxml::Document> xml); void read_mxf_descriptor (std::shared_ptr<ASDCP::TimedText::MXFReader> reader); void read_mxf_resources (std::shared_ptr<ASDCP::TimedText::MXFReader> reader, std::shared_ptr<DecryptionContext> dec); diff --git a/src/verify.cc b/src/verify.cc index 2af2cc58..887ac166 100644 --- a/src/verify.cc +++ b/src/verify.cc @@ -2243,7 +2243,6 @@ dcp::VerificationNote::type() const case Code::INCORRECT_TIMED_TEXT_ASSET_ID: case Code::INVALID_CLOSED_CAPTION_LINE_COUNT: case Code::INVALID_CLOSED_CAPTION_LINE_LENGTH: - case Code::INVALID_CLOSED_CAPTION_XML_SIZE_IN_BYTES: case Code::INVALID_EXTENSION_METADATA: case Code::INVALID_PICTURE_SIZE_IN_PIXELS: case Code::INVALID_LANGUAGE: @@ -2288,7 +2287,6 @@ dcp::VerificationNote::type() const case Code::INCORRECT_JPEG2000_POC_MARKER_COUNT_FOR_2K: case Code::INCORRECT_JPEG2000_POC_MARKER_COUNT_FOR_4K: case Code::MISSING_JPEG2000_TLM_MARKER: - case Code::INVALID_SUBTITLE_DURATION_BV21: return Type::BV21_ERROR; case Code::DUPLICATE_ASSET_ID_IN_ASSETMAP: case Code::DUPLICATE_ASSET_ID_IN_PKL: @@ -2349,6 +2347,8 @@ dcp::VerificationNote::type() const case Code::NEARLY_INVALID_PICTURE_FRAME_SIZE_IN_BYTES: case Code::NEARLY_INVALID_SUBTITLE_LINE_LENGTH: case Code::THREED_ASSET_MARKED_AS_TWOD: + case Code::INVALID_SUBTITLE_DURATION_BV21: + case Code::INVALID_CLOSED_CAPTION_XML_SIZE_IN_BYTES: return Type::WARNING; }; |
