contrib: Add tests for symbol-check
Summary:
Check both failure cases:
- Use a glibc symbol from a version that is too new
- Use a symbol from a library that is not in the allowlist
And also check a conforming binary.
Adding a similar check for Windows PE can be done in a separate PR.
https://github.com/bitcoin/bitcoin/pull/20476/commits/5bab08df175db3a4283596515e498fc5a4d0dab9
contrib: add MACHO tests to symbol-check tests
https://github.com/bitcoin/bitcoin/pull/20476/commits/ed1bbcefeaafef460b6e5609de85e13c12e0d2a4
contrib: add symbol check test for PE
contrib: run test-symbol check for RISCV
Now that we are using Focal for Gitian building (glibc 2.31), we can
user a newer introduced symbol, and include RISCV in this test.
Note that we are more interested in the newer symbol than the RISCV support. The previous version of the test failed because an even newer glibc 2.34 symbol was detected.
test: Cleanup test files in test-{security,symbol}-check.py
This is a backport of core#20476, core#20608, core#21255 and core#21428
Note that at this point the test is not reliable enough to be run on CI (this is also the case for security-check.py). The goal of this diff is to bring test-symbol-check.py up to date to enable backporting core#22381, which we want for other reasons.
Test Plan:
cd contrib/devtools ./test-security-check.py ./test-symbol-check.py
Not all tests will pass, and the success depends on your configuration.
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Differential Revision: https://reviews.bitcoinabc.org/D13603