#include <boost/foreach.hpp>
using std::list;
+using std::vector;
using std::string;
using std::stringstream;
using std::setw;
RSA_free (rsa);
BIO_free (bio);
+
+ _annotation_text = kdm.annotation_text ();
+ _content_title_text = kdm.content_title_text ();
+ _issue_date = kdm.issue_date ();
+}
+
+DecryptedKDM::DecryptedKDM (
+ LocalTime not_valid_before,
+ LocalTime not_valid_after,
+ string annotation_text,
+ string content_title_text,
+ string issue_date
+ )
+ : _not_valid_before (not_valid_before)
+ , _not_valid_after (not_valid_after)
+ , _annotation_text (annotation_text)
+ , _content_title_text (content_title_text)
+ , _issue_date (issue_date)
+{
+
}
DecryptedKDM::DecryptedKDM (
}
}
+/** @param type (MDIK, MDAK etc.)
+ * @param key_id Key ID.
+ * @param key The actual symmetric key.
+ * @param cpl_id ID of CPL that the key is for.
+ */
+void
+DecryptedKDM::add_key (string type, string key_id, Key key, string cpl_id)
+{
+ _keys.push_back (DecryptedKDMKey (type, key_id, key, cpl_id));
+}
+
+void
+DecryptedKDM::add_key (DecryptedKDMKey key)
+{
+ _keys.push_back (key);
+}
+
EncryptedKDM
-DecryptedKDM::encrypt (shared_ptr<const CertificateChain> signer, Certificate recipient, Formulation formulation) const
+DecryptedKDM::encrypt (shared_ptr<const CertificateChain> signer, Certificate recipient, vector<Certificate> trusted_devices, Formulation formulation) const
{
list<pair<string, string> > key_ids;
list<string> keys;
return EncryptedKDM (
signer,
recipient,
+ trusted_devices,
device_list_description,
_keys.front().cpl_id (),
_content_title_text,