#include "colour_conversion.h"
#include "compose.hpp"
#include "j2k.h"
-#include "decryption_context.h"
+#include "crypto_context.h"
#include <asdcp/KM_fileio.h>
#include <asdcp/AS_DCP.h>
boost::throw_exception (FileError ("could not open JPEG2000 file", path, errno));
}
- fread (j2k_data(), 1, size, f);
+ size_t n = fread (j2k_data(), 1, size, f);
+ if (n != size) {
+ boost::throw_exception (FileError ("could not read from JPEG2000 file", path, errno));
+ }
+
fclose (f);
_buffer->Size (size);
/* XXX: unfortunate guesswork on this buffer size */
_buffer = new ASDCP::JP2K::FrameBuffer (4 * Kumu::Megabyte);
- ASDCP::Result_t const r = reader->ReadFrame (n, *_buffer, c->decryption());
+ ASDCP::Result_t const r = reader->ReadFrame (n, *_buffer, c->context(), c->hmac());
if (ASDCP_FAILURE (r)) {
boost::throw_exception (DCPReadError (String::compose ("could not read video frame %1 (%2)", n, static_cast<int>(r))));