A shared library that can be preloaded to instrument the main() function of programs being executed
The packaging folder contains a make_srpm.sh script. Running this script will create a source rpm that can be build and installed in the standard way.
git clone https://github.com/aufover/ldpwrap; cd ldwrap # get ldpwrap
cd packaging; ./make_srpm.sh # make source rpm package
rpmbuild --rebuild ldpwrap*.src.rpm # make rpm package
sudo dnf localinstall ~/rpmbuild/RPMS/x86_64/ldpwrap*.rpm # install it
The tool can be run by the /usr/bin/ldp_run script contained in the package.
Currently needs ln -s /usr/lib64/LLVMgold.so /usr/lib/LLVMgold.so to run
An example of usage of cbmc and ldpwrapper:
koji download-build -a src logrotate-3.18.0-3.fc34 # get package which you want to analyze, in this example the logrotate package is used
# run cbmc analysis on choosed package:
/usr/bin/ldp_run --srpm=/logrotate-3.18.0-3.fc34.src.rpm --tool=cbmc --prp='--unwind 1 --pointer-check' --logdir=<logs_file> --max-time=10