bitcoin/.github
TheCharlatan fcb0590623
kernel: Introduce initial kernel C header API
As a first step, implement the equivalent of what was implemented in the
now deprecated libbitcoinconsensus header. Also add a test binary to
exercise the header and library.

Unlike the deprecated libbitcoinconsensus the kernel library can now use
the hardware-accelerated sha256 implementations thanks for its
statically-initialzed context. The functions kept around for
backwards-compatibility in the libbitcoinconsensus header are not ported
over. As a new header, it should not be burdened by previous
implementations. Also add a new error code for handling invalid flag
combinations, which would otherwise cause a crash.

The macros used in the new C header were adapted from the libsecp256k1
header.

To make use of the C header from C++ code, a C++ header is also
introduced for wrapping the C header. This makes it safer and easier to
use from C++ code.

Co-authored-by: stickies-v <stickies-v@protonmail.com>
2025-10-08 18:58:29 +02:00
..
ISSUE_TEMPLATE cmake: Require Qt 6 to build GUI 2025-04-02 09:11:48 +01:00
actions ci: refactor docker action to return provider str 2025-09-10 21:34:07 +01:00
workflows kernel: Introduce initial kernel C header API 2025-10-08 18:58:29 +02:00
PULL_REQUEST_TEMPLATE.md doc: Add redirect for GUI issues and pull requests 2020-06-08 10:06:02 -04:00
ci-test-each-commit-exec.py kernel: Introduce initial kernel C header API 2025-10-08 18:58:29 +02:00