mxfcrypt.cpp File Reference

MXF en/decrypt utility for MXFLib. More...

#include <mxflib/mxflib.h>
#include <stdio.h>
#include <stdlib.h>
#include "crypto_asdcp.h"
#include <time.h>
#include <stdarg.h>

Functions

bool ProcessMetadata (bool DecryptMode, MetadataPtr HMeta, BodyReaderPtr BodyParser, GCWriterPtr Writer, bool LoadInfo=false)
 Process a set of header metadata.
bool ProcessPackageForEncrypt (BodyReaderPtr BodyParser, GCWriterPtr Writer, UInt32 BodySID, PackagePtr ThisPackage, bool LoadInfo=false)
 Process the metadata for a given package on an encryption pass.
bool ProcessPackageForDecrypt (BodyReaderPtr BodyParser, GCWriterPtr Writer, UInt32 BodySID, PackagePtr ThisPackage, bool LoadInfo=false)
 Process the metadata for a given package on a decryption pass.
int main (int argc, char *argv[])
void warning (const char *Fmt,...)
 Display a warning message.
void error (const char *Fmt,...)
 Display an error message.

Variables

UInt8 ProductGUID_Data [16] = { 0x84, 0x62, 0x40, 0xf1, 0x47, 0xed, 0xde, 0x40, 0x86, 0xdc, 0xe0, 0x99, 0xda, 0x7f, 0xd0, 0x53 }
string CompanyName = "freeMXF.org"
string ProductName = "mxfcrypt file de/encrypt utility"
string ProductVersion = "Based on " + LibraryVersion()
string PlatformName = "MXFLib (" + OSName() + ")"
int PlaintextOffset = 0
 Plaintext offset to use when encrypting.
std::string KeyFileName
 Name of keyfile or directoy to search for keyfiles with autogenerated names.
bool DebugMode = false
 MXFLib debug flag.
bool ClosingHeader = true
 Flag set when we are updating the header in the output file to be closed if it is open in the source file (default).
bool DecryptMode = false
 Flag for decrypt rather than encrypt.
bool PreserveIndex = false
 Flag for preserving the index table (non complient!).
bool PreserveECBatch = false
 Flag for preserving the essence containers labels batch.
bool PreserveECLabel = true
 Flag for preserving the essence containers label in the descriptor.
UInt32 IndexSID
 The original IndexSID.
IndexTablePtr Index
 Index table to update.
DataChunkPtr OriginalIndexData
 Original index data (if preserving the index unchanged).


Detailed Description

MXF en/decrypt utility for MXFLib.

Version:
Id
mxfcrypt.cpp,v 1.17 2007/04/01 21:53:39 matt-beard Exp

Function Documentation

int main ( int  argc,
char *  argv[] 
)

bool ProcessMetadata ( bool  DecryptMode,
MetadataPtr  HMeta,
BodyReaderPtr  BodyParser,
GCWriterPtr  Writer,
bool  LoadInfo 
)

Process a set of header metadata.

If encrypting a crypto context is added in each internal file package, otherwise crypto tracks are removed

Returns:
true if all OK, else false

bool ProcessPackageForDecrypt ( BodyReaderPtr  BodyParser,
GCWriterPtr  Writer,
UInt32  BodySID,
PackagePtr  ThisPackage,
bool  LoadInfo 
)

Process the metadata for a given package on a decryption pass.

Returns:
true if all OK, else false

bool ProcessPackageForEncrypt ( BodyReaderPtr  BodyParser,
GCWriterPtr  Writer,
UInt32  BodySID,
PackagePtr  ThisPackage,
bool  LoadInfo 
)

Process the metadata for a given package on an encryption pass.

Returns:
true if all OK, else false


Variable Documentation

bool ClosingHeader = true

Flag set when we are updating the header in the output file to be closed if it is open in the source file (default).

string CompanyName = "freeMXF.org"

bool DebugMode = false

MXFLib debug flag.

bool DecryptMode = false

Flag for decrypt rather than encrypt.

IndexTablePtr Index

Index table to update.

UInt32 IndexSID

The original IndexSID.

std::string KeyFileName

Name of keyfile or directoy to search for keyfiles with autogenerated names.

DataChunkPtr OriginalIndexData

Original index data (if preserving the index unchanged).

int PlaintextOffset = 0

Plaintext offset to use when encrypting.

string PlatformName = "MXFLib (" + OSName() + ")"

bool PreserveECBatch = false

Flag for preserving the essence containers labels batch.

bool PreserveECLabel = true

Flag for preserving the essence containers label in the descriptor.

bool PreserveIndex = false

Flag for preserving the index table (non complient!).

UInt8 ProductGUID_Data[16] = { 0x84, 0x62, 0x40, 0xf1, 0x47, 0xed, 0xde, 0x40, 0x86, 0xdc, 0xe0, 0x99, 0xda, 0x7f, 0xd0, 0x53 }

string ProductName = "mxfcrypt file de/encrypt utility"

string ProductVersion = "Based on " + LibraryVersion()


Generated on Mon Apr 2 15:20:55 2007 for MXFLib by  doxygen 1.5.1-p1