summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/encrypted_kdm.cc11
-rw-r--r--src/encrypted_kdm.h1
-rw-r--r--src/smpte_text_asset.h1
-rw-r--r--src/verify.cc4
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;
};