Adding optional initial vector to EncryptedContent
Refs: #3013
Change-Id: I1c6fea3552796d13525d33e3a9d385156e2d463e
diff --git a/src/encrypted-content.hpp b/src/encrypted-content.hpp
index 2d0203e..c31d705 100644
--- a/src/encrypted-content.hpp
+++ b/src/encrypted-content.hpp
@@ -26,7 +26,8 @@
public:
EncryptedContent();
- EncryptedContent(tlv::AlgorithmTypeValue type, const KeyLocator& keyLocator, const ConstBufferPtr& payload);
+ EncryptedContent(tlv::AlgorithmTypeValue type, const KeyLocator& keyLocator,
+ ConstBufferPtr payload, ConstBufferPtr iv = nullptr);
explicit
EncryptedContent(const Block& block);
@@ -53,9 +54,15 @@
getKeyLocator() const;
void
- setPayload(const ConstBufferPtr& payload);
+ setInitialVector(ConstBufferPtr iv);
- const ConstBufferPtr
+ ConstBufferPtr
+ getInitialVector() const;
+
+ void
+ setPayload(ConstBufferPtr payload);
+
+ ConstBufferPtr
getPayload() const;
template<encoding::Tag TAG>
@@ -82,6 +89,7 @@
bool m_hasKeyLocator;
KeyLocator m_keyLocator;
ConstBufferPtr m_payload;
+ ConstBufferPtr m_iv;
mutable Block m_wire;
};