The appropriate hash to use for validating the data is automatically
detected, and if no hash type is specified, use SHA-512 on 64-bit systems
and SHA-256 on 32-bit systems, as this provides the best performance.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Turn the SHA256Transaction store into a HashTransactionStore and support
SHA-384 and SHA-512, which provide better performance on 64-bit systems.
Don't support SHA-224 since it is weaker and is only useful where the hash
would be truncated anyway.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
The mode was always being reported as "w" (write), which resulted in SHA-256
checksums not being validated on load.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
We should not rely on the user setting up reasonable values for the committer
identification for git. Use a committer name of newfol and an email address
consisting of the user's username and the FQDN of the machine.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Since currently we can only serialize YAML, not load it, verify that it
serializes correctly twice.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Extend the filemanip tests to ensure that the data is serialized the same way
every time.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
This also includes a unit test to ensure that round-tripping works properly for
those serializations where it's supported.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Also included are unit tests to verify the behavior of the new version
computation functions.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>