microsoft / MSRSec

Security and Privacy Research at Microsoft
MIT License
37 stars 28 forks source link

Add version check #16

Closed dmcilvaney closed 5 years ago

dmcilvaney commented 5 years ago

Recommend merging https://github.com/microsoft/MSRSec/pull/15 first.

Add a recovery path if either a file fails to load, or versioning is incorrect.

Currently upgrade is not implemented, will need a slight rework to re-initialize memory after an upgrade if/when that is implemented.

Control the behaviour with the flags: CFG_TA_ENABLE_UPGRADE (Not implemented yet) Would attempt to update the storage objects to a new version, as based on the version file. CFG_TA_WIPE_ON_ERROR Enumerates and deletes all persistent objects if an object fails to load, or there is a version missmatch and upgrade is not supported.