7.0.0-dev2
Pre-release
Pre-release
·
142 commits
to main
since this release
Added
- Allow changing the constitution during disaster recovery via the
command.recover.constitution_filesentry in cchost. (#7155) - Added
toArrayBuffertoccfapp/utilswhich convertsArrayBufferLiketoArrayBuffer. (#7171) ccf/crypto/openssl_init.hheader exposingccf::crypt::openssl_sha256_init()andccf::crypto::openssl_sha256_shutdown()for unit tests usingccfcrypto.a. (#7118)
Changed
cchostis removed, and each application now provides its own executable:- CCF nodes no longer contain a separate
cchostexecutable and enclave library (.so) file. Each former enclave library is now its own executable, currently sharing the same set configuration format as the previouscchost. - The
js_genericsample app is no longer a library installed at/ccf/lib/libjs_generic.so, it is now an executable installed at/ccf/bin/js_generic. - The
add_ccf_appfunction in CMake now builds an executable rather than a library. The caller should provide amainfunction, and callccf::run()frominclude/ccf/run.hto start the node (seesamples/apps/main.cppfor a minimal example). - Application logging no longer traverses the ringbuffer. As current target platforms do not require distinct enclave and host components, what was previously "in-enclave" logging that was deferred via the ringbuffer can now be immediately sent to stdout.
- CA certificates issued by CCF (ie -
service_cert.pem) now include akeyUsageextension, to comply with RFC5280 (#7134).
Removed
- CCF no longer publishes a "run" package (cchost + runtime dependencies). Instead, only the -devel package is published, which has to be used by CCF application developers. CCF also provides ccfapp CPack settings to pull in all CCF runtime dependencies. Check Packaging your C++ app for documentation (#7187).
Dependencies
- Updated snmalloc to 0.7.1.