diff options
Diffstat (limited to 'asdcplib/src/h__Writer.cpp')
| -rwxr-xr-x | asdcplib/src/h__Writer.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/asdcplib/src/h__Writer.cpp b/asdcplib/src/h__Writer.cpp index 5d3a1d5a..662e0f82 100755 --- a/asdcplib/src/h__Writer.cpp +++ b/asdcplib/src/h__Writer.cpp @@ -499,11 +499,13 @@ ASDCP::h__Writer::WriteMXFHeader(const std::string& PackageLabel, const UL& Wrap // standard method of writing a plaintext or encrypted frame Result_t ASDCP::h__Writer::WriteEKLVPacket(const ASDCP::FrameBuffer& FrameBuf, const byte_t* EssenceUL, - AESEncContext* Ctx, HMACContext* HMAC) + AESEncContext* Ctx, HMACContext* HMAC, std::string* hash) { Result_t result = RESULT_OK; IntegrityPack IntPack; + m_File.StartHashing(); + byte_t overhead[128]; Kumu::MemIOWriter Overhead(overhead, 128); assert(m_Dict); @@ -635,6 +637,10 @@ ASDCP::h__Writer::WriteEKLVPacket(const ASDCP::FrameBuffer& FrameBuf, const byte if ( ASDCP_SUCCESS(result) ) result = m_File.Writev(); + if (hash) { + *hash = m_File.StopHashing(); + } + return result; } |
